列表的模板是:

EmployeeList =  [u'<EmpId>', u'<Name>', u'<Doj>', u'<Salary>']

我想从这里转换
EmployeeList =  [u'1001', u'Karick', u'14-12-2020', u'1$']

对此:
EmployeeList =  ['1001', 'Karick', '14-12-2020', '1$']

转换后,我实际上正在检查EmployeeList.values()中是否存在“1001”。

最佳答案

将列表中的每个值编码为字符串:

[x.encode('UTF8') for x in EmployeeList]

您需要选择一个有效的编码;不要使用str(),因为它将使用系统默认值(对于ASCII为Python 2的系统),该默认值不会将所有可能的代码点编码为Unicode值。

UTF-8能够编码所有Unicode标准,但是ASCII范围之外的任何代码点都会导致每个字符多个字节。

但是,如果您要做的只是测试特定的字符串,请测试unicode字符串,并且在测试该字符串时Python不必自动编码所有值:
u'1001' in EmployeeList.values()

07-24 09:33