Tôi đã gặp phải sự cố lạ vào hôm nay. Tôi đã sử dụng biến số letters
của thư viện chuẩn của Python và nhận thấy rằng kết quả trong bpython không giống với kết quả trong con trăn vani.Tại sao string.letters khác nhau giữa python và bpython?
Tôi đang sử dụng Python 2.7.3 và bpython 0.10.1 và virtualenv 1.8.4. Đây là những gì tôi thấy.
$ bpython
>>> import string
>>> string.letters
'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
$ python
>>> import string
>>> string.letters
'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
Tôi không chắc là nó quan trọng nhưng tôi đang chạy trên xubuntu 12.10.
Ai đó có thể giải thích điều gì đang xảy ra ở đây không?
phỏng đoán của tôi là chúng chỉ là các triển khai khác nhau, trong đó có một chuỗi 'string.letters = string.ascii_upper + string.ascii_lower' và chuỗi kia đã làm' string.letters = string.ascii_lower + string.ascii_upper', tôi không nghĩ nó sẽ có bất kỳ tác dụng nào đối với bất kỳ chương trình nào của bạn (trừ khi bạn đang cố gắng làm 'string.letters [: 26]' hoặc cái gì đó) –
Thật lạ lùng: bằng cách sử dụng 'string.letters' tôi nhận được kết quả tương tự như bạn, nhưng sử dụng' string. ascii_letters' Tôi nhận được ''abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'' trong cả python và bpython. – dusan