Python中字符串的第一个字符

时间:2018-03-20 13:49:11

标签: python string python-2.7 encoding

在Python中我有这个字符串

dir mem stack inp out

我只需要获得它的第一个字符。但是,当我尝试string = "Ľubomír Mezovský" 时,它返回了string[0]。当我尝试时效果很好。我的问题是为什么? 我需要为几个字符串运行它,当字符串不以变音字符开头时,它返回两个字符的子字符串。

我也在使用string[:2]和Python 2.7

2 个答案:

答案 0 :(得分:3)

您正在处理字节字符串(假设您正在使用Python 2.x)。

使用str.decode将字节字符串转换为unicode-string,获取第一个字符,然后使用str.encode将其转换回二进制字符串(可选,除非您应使用字节字符串)

>>> string = "Ľubomír Mezovský"
>>> print(string.decode('utf-8')[0].encode('utf-8'))
Ľ

答案 1 :(得分:0)

尝试将字符串转换为Unicode并将编码转换为“utf-8”

<强>实施例

string = u"Ľubomír Mezovský"
print string[0].encode('utf-8')

<强>输出:

Ľ

python2.7

中测试