是否有包含所有ascii字符列表的Python库?

rec*_*gle 84 python ascii

如下所示:

import ascii

print ascii.charlist()
Run Code Online (Sandbox Code Playgroud)

哪个会返回类似[A,B,C,D ......]的东西

Aco*_*orn 141

string常数可能是你想要的东西.(docs)

>>> import string
>>> string.ascii_uppercase
'ABCDEFGHIJKLMNOPQRSTUVWXYZ'

如果你想要所有可打印的字符:

>>> string.printable
'0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!"#$%&\'()*+,-./:;?@[\\]^_`{|}~ \t\n\r\x0b\x0c'

  • 我认为这有点令人困惑,ASCII不是从`a`到`z`而是从0到127代码,这不仅仅是字母. (3认同)
  • `string.ascii_letters`是整个shebang! (3认同)

Sim*_*mon 28

这里是:

[chr(i) for i in xrange(127)]
Run Code Online (Sandbox Code Playgroud)

  • 对于那些好奇的人来说,“sorted({chr(i) for i in range(128)} - set(string.printable))”是“['\x00', '\x01', '\x02', '\x03” '、'\x04'、'\x05'、'\x06'、'\x07'、'\x08'、'\x0e'、'\x0f'、'\x10'、'\x11'、'\x12 '、'\x13'、'\x14'、'\x15'、'\x16'、'\x17'、'\x18'、'\x19'、'\x1a'、'\x1b'、'\x1c ', '\x1d', '\x1e', '\x1f', '\x7f']` (4认同)

gst*_*eff 13

ASCII定义128个字符,其字节值范围为0到127(含).因此,要获得所有ASCII字符的字符串,您可以这样做

''.join([chr(i) for i in range(128)])
Run Code Online (Sandbox Code Playgroud)

其中只有一些是可打印的,但是可以通过Python访问可打印的ASCII字符

import string
string.printable
Run Code Online (Sandbox Code Playgroud)


sar*_*old 5

由于 ASCII 可打印字符是一个非常小的列表(值在 32 到 126 之间的字节),因此在需要时很容易生成:

>>> for c in (chr(i) for i in range(32, 127)):
...     print(c)
... 
 
!
"
#
$
%
... # a few lines removed :)
y
z
{
|
}
~
Run Code Online (Sandbox Code Playgroud)