Щось як нижче:
import ascii
print ascii.charlist()
Що поверне щось на зразок [A, B, C, D ...]
Щось як нижче:
import ascii
print ascii.charlist()
Що поверне щось на зразок [A, B, C, D ...]
Відповіді:
Ці stringконстанти можуть бути то , що ви хочете. ( документи )
>>> рядок імпорту >>> string.ascii_uppercase 'А Б В Г Г Д Е Є Ж З И І Ї Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ ЬЮ Я'
Якщо вам потрібні всі друковані символи:
>>> string.printable
'0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ! "# $% & \' () * +, -. /:;? @ [\ \] ^ _` {|} ~ \ T \ n \ r \ x0b \ x0c '
string.ascii_lettersце цілий шебанг!
string.letters... string.printableближче (але не те саме) до того, на що мав на увазі @Andrey.
string.printableдає всі символи для друку.
Ось:
[chr(i) for i in xrange(127)]
Stringмодуль застарілий, це найкраща відповідь
stringмодуль застарілий лише частково
range(127), оскільки його rangeбуло видалено та xrangeперейменовано. Крім того, щоб отримати символи Unicode в Python 2, вам слід зателефонувати, unichr(i)але в Python 3 простоchr(i)
ASCII визначає 128 символів, значення байтів яких варіюються від 0 до 127 включно. Отже, щоб отримати рядок усіх символів ASCII, ви можете просто зробити
''.join([chr(i) for i in range(128)])
Лише деякі з них можна роздрукувати, однак - доступні для друку символи ASCII можна отримати в Python через
import string
string.printable
Ви можете зробити це без модуля:
characters = list(map(chr, range(97,123)))
Наберіть, charactersі його слід надрукувати ["a","b","c", ... ,"x","y","z"]. Для верхнього регістру:
characters=list(map(chr,range(65,91)))
Для цього може бути використаний будь-який діапазон (включаючи використання кроків діапазону), оскільки він використовує Unicode. Тому збільште, range()щоб додати більше символів до списку.
map()викликає chr()кожну ітерацію range().
Ні, немає, але ви легко можете зробити такий:
#Your ascii.py program:
def charlist(begin, end):
charlist = []
for i in range(begin, end):
charlist.append(chr(i))
return ''.join(charlist)
#Python shell:
#import ascii
#print(ascii.charlist(50, 100))
#Comes out as:
#23456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abc
string.printable ви стверджуєте "ні, немає"?
aдо,zа від 0 до 127 кодів, це не тільки літери.