0

我有以下字符串

test="ن گ ب ن د ی ک ر و ا ن "

我想要的是我想访问每个字符并将其保存在一些变量中以供将来访问,但是当我循环它们时,我得到了奇怪的输出。实际上我不太了解编码方案。

for i in test:
    print(i)

上面的代码给了我一些奇怪的字符我想要的是原始脚本字符吗?

4

2 回答 2

3

要么定义test为 unicode 字符串,要么使用以下decode方法:

test="ن گ ب ن د ی ک ر و ا ن"
for i in test.decode('utf8'):
    print(i)
    # print unicode value
    print(repr(i))

test=u"ن گ ب ن د ی ک ر و ا ن"
for i in test:
    print(i)
    # print unicode value
    print(repr(i))

显然我的回答与 Python 2.7.x 有关。

于 2016-07-19T15:04:08.140 回答
0

对于 Python 2.x 试试这个:

test=u"ن گ ب ن د ی ک ر و ا ن "
for i in test:
    print(i)

附加u使它成为一个unicode对象。

于 2016-07-19T15:00:35.307 回答