今天我遇到了一个奇怪的问题。我使用Python标准库的string
模块的letters
变量,并注意到bpython中的结果与香草python中的结果不同。为什么python和bpython之间的string.letters不同?
我使用Python 2.7.3和bpython 0.10.1和virtualenv 1.8.4。这是我所看到的。
$ bpython
>>> import string
>>> string.letters
'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
$ python
>>> import string
>>> string.letters
'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
我不知道它的问题,但我在xubuntu 12.10上运行这个。
有人能解释一下这里发生了什么吗?
我的猜测是他们只是不同的实现,其中一个说'string.letters = string.ascii_upper + string.ascii_lower',另一个'string.letters = string.ascii_lower + string.ascii_upper',我不认为它会对你的程序有任何影响(除非你正在尝试执行'string.letters [:26]'或其他什么) – 2013-04-24 15:48:10
这很奇怪:使用'string.letters'我得到和你一样的结果,但是使用'string。 ascii_letters'我在python和bpython中都得到'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ''。 – dusan 2013-04-24 17:16:32