Qualcosa come di seguito:
import ascii
print ascii.charlist()
Che restituirebbe qualcosa come [A, B, C, D ...]
Qualcosa come di seguito:
import ascii
print ascii.charlist()
Che restituirebbe qualcosa come [A, B, C, D ...]
Risposte:
Le string
costanti possono essere ciò che desideri. ( documenti )
>>> stringa di importazione >>> string.ascii_uppercase "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
Se vuoi tutti i caratteri stampabili:
>>> string.printable '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ! "# $% & \' () * +, -. /:;? @ [\\] ^ _` {|} ~ \ t \ n \ r \ x0b \ x0c '
string.ascii_letters
è l'intera faccenda!
string.letters
... string.printable
è più vicino (ma non lo stesso) a ciò a cui si riferiva @Andrey, però.
string.printable
fornisce tutti i caratteri stampabili.
Ecco qui:
[chr(i) for i in xrange(127)]
String
modulo è deprecato, questa è la risposta migliore
string
modulo è solo parzialmente deprecato
range(127)
, poiché è range
stato rimosso e xrange
rinominato. Inoltre, per ottenere caratteri Unicode in Python 2 dovresti chiamare unichr(i)
ma in Python 3 semplicementechr(i)
ASCII definisce 128 caratteri i cui valori di byte vanno da 0 a 127 inclusi. Quindi, per ottenere una stringa di tutti i caratteri ASCII, potresti semplicemente farlo
''.join([chr(i) for i in range(128)])
Solo alcuni di questi sono stampabili, tuttavia, i caratteri ASCII stampabili sono accessibili in Python tramite
import string
string.printable
Puoi farlo senza un modulo:
characters = list(map(chr, range(97,123)))
Digita characters
e dovrebbe stampare ["a","b","c", ... ,"x","y","z"]
. Per l'uso in maiuscolo:
characters=list(map(chr,range(65,91)))
Qualsiasi intervallo (incluso l'uso dei passaggi di intervallo) può essere utilizzato per questo, perché utilizza Unicode. Pertanto, aumentare il range()
per aggiungere più caratteri all'elenco.
map()
chiama chr()
ogni iterazione di range()
.
No, non c'è, ma puoi facilmente crearne uno:
#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
, lei afferma "no, non c'è"?
a
az
ma da 0 a 127 codici, che non sono solo lettere.