有没有办法让python isalpha方法理解scandics?我试过以下方法:
>>> import locale
>>> locale.getlocale()
(None, None)
>>> 'thisistext'.isalpha()
True
>>> 'äöå'.isalpha()
False
>>> locale.setlocale(locale.LC_ALL,"")
'Finnish_Finland.1252'
>>> locale.getlocale()
('Finnish_Finland', '1252')
>>> 'äöå'.isalpha()
False
你也可以试试这个:
最简单的方法是使用unicode字符串,如果您的情况允许的话。在字符串前加上“u”符号:
或者这一行作为文件的第一行:
看起来字符串常量中的内容不是用
cp1252
编码的字节字符串,这是使str.isalpha
在您的语言环境中正常工作所必需的。你不会说是在什么环境下打的。我可以从locale
响应的方式看出您在Windows上;也许您是从某个IDE获得UTF-8
,或者从命令提示符窗口获得cp850
。你在屏幕上看到的通常对调试没有什么帮助。你所看到的不是你所拥有的。内置函数是(或希望是)您的朋友。它将用ASCII清楚地显示您实际拥有的内容。[Python 3:
repr
被重命名为ascii
,并且有一个新的repr
,这不是您想要的]尝试键入
s = "your string constant with 'accented' letters"
,然后print repr(s)
,然后编辑问题以显示结果(复制/粘贴,不要重新键入)。还要说明您正在使用的Python版本。另一个可能的朋友是“unicodedata.name”。。。见下文。
您可以将以上结果与this chart进行比较。
相关问题 更多 >
编程相关推荐