将unicode列表转换为列表字符串
Converting unicode list to string of list
我有一个 list unicode 列表。现在我需要将它转换为列表字符串列表。我怎样才能做到这一点?
listoflist = [
[
u'keep', u'see', u'recover', u'try', u'cry', u'say', u'seem',
u'come', u'saw', u'have', u'be', u'begin', u'fell', u'wait',
u'come', u'wait', u'be', u'retire', u'be'
],
[
u'make', u'let', u'forget', u'forgive', u'punish', u'take', u'be',
u'take', u'forget', u'come', u'think', u'say', u'be', u'be', u'say',
u'think', u'jump', u'poke', u'come', u'be', u'have', u'try', u'come',
u'turn', u'approach', u'be', u'meet', u'try', u'run', u'boast',
u'bring', u'satisfy', u'use', u'be', u'leave', u'be', u'do', u'say',
u'bristle'
]
]
我尝试使用 ast
库
import ast
d = []
for i in range(0,50):
d.append([item.encode('ascii') for item in ast.literal_eval(listoflist)])
但是我得到以下错误。
raise ValueError('malformed string')
ValueError: malformed string
欢迎不同的方法。
这将 return d
作为具有 ascii 字符串而不是 unicode 的数组的数组。
# Iterate through each list in listoflist
# Then iterate through each unicode string in listoflist
d = [[s.encode('ascii') for s in list] for list in listoflist]
同样如@pm-2ring 所述,如果您想忽略无法转换为 ascii
.
的 unicode
字符串,您也可以使用 s.encode('ascii', 'ignore')
获取我们使用的每个列表。 for list in listoflist
。
获取我们使用的每个unicode字符串。 for s in list
.
然后我们使用 s.encode('ascii')
进行转换
如果想让代码易于理解,请执行此操作
for l in listoflist:
d_temp = []
for s in l:
d_temp.append(s.encode('ascii'))
d.append(d_temp)
我有一个 list unicode 列表。现在我需要将它转换为列表字符串列表。我怎样才能做到这一点?
listoflist = [
[
u'keep', u'see', u'recover', u'try', u'cry', u'say', u'seem',
u'come', u'saw', u'have', u'be', u'begin', u'fell', u'wait',
u'come', u'wait', u'be', u'retire', u'be'
],
[
u'make', u'let', u'forget', u'forgive', u'punish', u'take', u'be',
u'take', u'forget', u'come', u'think', u'say', u'be', u'be', u'say',
u'think', u'jump', u'poke', u'come', u'be', u'have', u'try', u'come',
u'turn', u'approach', u'be', u'meet', u'try', u'run', u'boast',
u'bring', u'satisfy', u'use', u'be', u'leave', u'be', u'do', u'say',
u'bristle'
]
]
我尝试使用 ast
库
import ast
d = []
for i in range(0,50):
d.append([item.encode('ascii') for item in ast.literal_eval(listoflist)])
但是我得到以下错误。
raise ValueError('malformed string')
ValueError: malformed string
欢迎不同的方法。
这将 return d
作为具有 ascii 字符串而不是 unicode 的数组的数组。
# Iterate through each list in listoflist
# Then iterate through each unicode string in listoflist
d = [[s.encode('ascii') for s in list] for list in listoflist]
同样如@pm-2ring 所述,如果您想忽略无法转换为 ascii
.
unicode
字符串,您也可以使用 s.encode('ascii', 'ignore')
获取我们使用的每个列表。 for list in listoflist
。
获取我们使用的每个unicode字符串。 for s in list
.
然后我们使用 s.encode('ascii')
如果想让代码易于理解,请执行此操作
for l in listoflist:
d_temp = []
for s in l:
d_temp.append(s.encode('ascii'))
d.append(d_temp)