Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/361.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python &引用ŞÜÖ&引用;是6个字符长_Python_Python 2.7_Utf 8 - Fatal编程技术网

Python &引用ŞÜÖ&引用;是6个字符长

Python &引用ŞÜÖ&引用;是6个字符长,python,python-2.7,utf-8,Python,Python 2.7,Utf 8,以下是脚本: #!/usr/bin/python #coding: utf-8 str='ŞÜÖ' a = len(str) print str print a 输出为: ŞÜÖ 6 第一个问题是:如何让它显示它声称的6个字符 第二个问题是 有没有可能确保python可以将这些字符视为每个字符的“1”字符,换句话说,对于上面的示例,总共3个字符?在Python2中,str是一个字节序列。此字符串由6个字节组成: In [136]: text = 'ŞÜÖ' In [137]: list(t

以下是脚本:

#!/usr/bin/python
#coding: utf-8
str='ŞÜÖ'
a = len(str)
print str
print a
输出为:

ŞÜÖ
6
第一个问题是:如何让它显示它声称的6个字符

第二个问题是


有没有可能确保python可以将这些字符视为每个字符的“1”字符,换句话说,对于上面的示例,总共3个字符?

在Python2中,
str
是一个字节序列。此字符串由6个字节组成:

In [136]: text = 'ŞÜÖ'

In [137]: list(text)
Out[137]: ['\xc5', '\x9e', '\xc3', '\x9c', '\xc3', '\x96']
如果您解码
str
以生成
unicode

In [138]: unitext = text.decode('utf-8')
然后,
unitext
由3个unicode字符组成:

In [139]: len(unitext)
Out[139]: 3

In [140]: list(unitext)
Out[140]: [u'\u015e', u'\xdc', u'\xd6']

如何让它向我展示它声称的6个字符
对于str中的字符:print(char)
对于第二个问题,使用unicode字符串而不是普通字符串(即str=u'ŞÜÖ',然后是len(str)->3)。或者首先使用
unicode
文本:
u'350; 220Ö