Python .split()没有'你

Sag*_*usA 8 python unicode-string

在Python中,如果我有一个像这样的字符串:

a =" Hello - to - everybody"
Run Code Online (Sandbox Code Playgroud)

我做到了

a.split('-')
Run Code Online (Sandbox Code Playgroud)

然后我明白了

[u'Hello', u'to', u'everybody']
Run Code Online (Sandbox Code Playgroud)

这只是一个例子.

如何在没有烦人的情况下获得一份简单的清单?

Gar*_*tty 19

u意味着它是一个unicode字符串 - 您的原始字符串也必须是一个unicode字符串.通常,保持字符串Unicode是一个好主意,因为尝试转换为普通字符串可能会因为没有等效字符而失败.

u纯粹是用来让你知道这是在表示一个unicode字符串-它不会影响字符串本身.

通常,unicode字符串与普通字符串完全一样,因此将它们保留为unicode字符串应该没有问题.

在Python 3.x中,unicode字符串是默认的,并且没有u前置(相反,bytes(相当于旧字符串)前缀b).

如果你真的,真的需要转换为正常的字符串(很少这种情况,但如果你使用的是不支持unicode字符串的扩展库,可能会出现问题),请看看unicode.encode()unicode.decode().您可以在拆分之前执行此操作,也可以在拆分之后使用列表解析执行此操作.