Подтвердить что ты не робот

Есть ли список всех символов ASCII в стандартной библиотеке python?

Есть ли поле или функция, которая возвращает все символы ASCII в стандартной библиотеке python?

4b9b3361

Ответ 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)])