列表的模板是:
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()