在python中将Unicode转换为List类型

时间:2011-04-21 11:46:49

标签: python mod-python

以下一项工作正常,

>>> a = 1,2
>>> a = u'[1,2]'
>>> print a
[1,2]
>>> type(a)
<type 'unicode'>
>>> n = [e.encode('utf-8') for e in a.strip('[]').split(',')]
>>> n
['1', '2']
>>> type(n)
<type 'list'>

但是当它包含在程序中时。它不是将值从unicode更改为list,而只是更改变量名称。

>>> a = 1,2
>>> a = u'[a]'
>>> print a
[a]  # Instead of 1,2.

请帮助我。

3 个答案:

答案 0 :(得分:2)

当您a = u'[a]'时,您没有使用放在列表中的初始变量a,而是使用字符'[a]'

>> a = 1,2
>> a = u'[what?]'
>> print a
[what?]

答案 1 :(得分:1)

我认为,您正在寻找的是unicode功能

>>> a = 1,2
>>> a
(1, 2)
>>> unicode(a)
u'(1, 2)'
>>> a = [1,2]
>>> unicode(a)
u'[1, 2]'
>>> 

答案 2 :(得分:0)

这显示了您显然正在尝试做的事情:

>>> a = 1,2
>>> print a
1,2

你真正需要做的是超越我。没有实际的理由将列表转换为unicode,实际上。