Coś jak poniżej:
import ascii
print ascii.charlist()
Który zwróciłby coś w rodzaju [A, B, C, D ...]
Na string
stałe może być to, co chcesz. ( dokumenty )
>>> importuj ciąg >>> string.ascii_uppercase 'ABCDEFGHIJKLMNOPQRSTU VWXYZ'
Jeśli chcesz wszystkie drukowalne znaki:
>>> string.printable '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ! "# $% & \' () * +, -. /:;? @ [\\] ^ _` {|} ~ \ t \ n \ r \ x0b \ x0c '
a
do,z
ale od 0 do 127 kodów, czyli nie tylko litery.string.ascii_letters
to cały shebang!string.letters
...string.printable
jest bliżej (ale nie to samo) do tego, do czego odnosił się @Andrey.string.printable
daje wszystkie drukowalne znaki.Oto ona:
źródło
String
moduł jest przestarzały, jest to najlepsza odpowiedźstring
moduł nie jest przestarzały. Zobacz to na przykład.string
moduł jest tylko częściowo wycofanyrange(127)
, ponieważrange
został usunięty ixrange
zmieniony. Ponadto, aby uzyskać znaki Unicode w Pythonie 2, powinieneś wywołać,unichr(i)
ale w Pythonie 3 po prostuchr(i)
ASCII definiuje 128 znaków, których wartości bajtów mieszczą się w zakresie od 0 do 127 włącznie. Aby uzyskać ciąg wszystkich znaków ASCII, możesz po prostu to zrobić
Jednak tylko niektóre z nich można wydrukować - do drukowalnych znaków ASCII można uzyskać dostęp w Pythonie przez
źródło
Ponieważ drukowalne znaki ASCII to dość mała lista (bajty o wartościach od 32 do 127), łatwo je wygenerować, gdy potrzebujesz:
źródło
Spróbuj tego!
źródło
range(0, 128)
.Możesz to zrobić bez modułu:
Wpisz
characters
i powinno się wydrukować["a","b","c", ... ,"x","y","z"]
. W przypadku używania wielkich liter:Można do tego użyć dowolnego zakresu (w tym użycia kroków zakresu), ponieważ korzysta z Unicode. Dlatego zwiększ,
range()
aby dodać więcej znaków do listy.map()
wywołujechr()
każdą iteracjęrange()
.źródło
Nie, nie ma, ale możesz łatwo to zrobić:
źródło
string.printable
, twierdzisz „nie, nie ma”?