Python将元组值从unicode转换为str

时间:2017-02-02 20:01:17

标签: python python-2.7 list unicode tuples

将元组中的值从unicode转换为字符串的最佳方法是什么?当元组在列表中时,是否可以在不循环的情况下完成?

unicodedata.normalize('NKFD', x)只能使用unicode,而不是元组。数据集还包括浮点值。

实施例

unicode_tuple_list = [(u'text in unicode', u'more unicode'), (u'more text in unicode', u'even more unicode')]

print type(unicode_tuple_list)   # list - keep as list

print type(unicode_tuple_list[0])   # tuple - keep as tuple           

print type(unicode_tuple_list[0][0])   # unicode

如何将所有这些值设为str

3 个答案:

答案 0 :(得分:5)

我不确定是否有办法在不使用循环/列表理解的情况下转换它。

我会使用map函数来完成此任务,请参阅:

unicode_tuple_list = [(u'text in unicode', u'more unicode'), (u'more text in unicode', u'even more unicode')]
string_tuple_list = [tuple(map(str,eachTuple)) for eachTuple in unicode_tuple_list]
print string_tuple_list

答案 1 :(得分:1)

解压缩元组,转换为字符串并重新打包。

答案 2 :(得分:0)

tuple(map(str, unicode_tuple_list))