Есть ли поле или функция, которая возвращает все символы ASCII в стандартной библиотеке python?
Есть ли список всех символов ASCII в стандартной библиотеке python?
Ответ 1
Вы можете использовать модуль string
:
import string
print string.printable
который дает:
'0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!"#$%&\'()*+,-./:;<=>[email protected][\\]^_`{|}~ \t\n\r\x0b\x0c'
Ответ 2
Вы можете сделать это.
ASCII = ''.join(chr(x) for x in range(128))
Если вам нужно проверить членство, есть другие способы сделать это:
if c in ASCII:
# c is an ASCII character
if c <= '\x7f':
# c is an ASCII character
Если вы хотите проверить, что целая строка ASCII:
def is_ascii(s):
"""Returns True if a string is ASCII, False otherwise."""
try:
s.encode('ASCII')
return True
except UnicodeEncodeError:
return False
Ответ 3
Вы можете использовать модуль стандартной библиотеки Python curses.ascii
. Некоторые из включенных функций включают в себя:
curses.ascii.isascii() # Checks for a character value in the 7-bit ASCII set.
curses.ascii.iscntrl() # Checks for an ASCII control character (in the range 0x00 to 0x1f).
curses.ascii.isalpha() # Check for an ASCII alphabetic character.
Из документации:
Модуль
curses.ascii
предоставляет константы имен для символов и функций ASCII для проверки членства в различных классах символов ASCII.
Обратите внимание, что модуль curses
может быть недоступен в системе Windows:
Модуль
curses
предоставляет интерфейс к библиотеке curses, де-факто стандарт для переносимой обработки дополнительных терминалов.В то время как curses наиболее широко используется в среде Unix, версии доступны для DOS, OS/2 и, возможно, других систем. Этот модуль расширения предназначен для соответствия API-интерфейсам ncurses, библиотеке curses с открытым исходным кодом, размещенной в Linux, и вариантам BSD Unix.
Ответ 4
Я не знаю ни одного включенного модуля python, у которого есть такой атрибут. Тем не менее, самый простой и короткий путь, вероятно, просто для его создания
standard_ascii = [chr(i) for i in xrange(128)]
или
extended_ascii = [chr(i) for i in xrange(256)]
для расширенного списка символов ascii.
Обратите внимание, что
import string
string.printable
не включает все 127 стандартных символов ascii, которые вы можете видеть по
len(string.printable)
> 100
Если вы хотите, чтобы они были строкой вместо списка, просто добавьте "".join()
, например:
extended_ascii = "".join([chr(i) for i in xrange(256)])