Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 要列出的Unicode字符串_Python_Django_Unicode_Django Views - Fatal编程技术网

Python 要列出的Unicode字符串

Python 要列出的Unicode字符串,python,django,unicode,django-views,Python,Django,Unicode,Django Views,我有一个从javascript文件发送到视图的字典列表。 现在,当我打印列表时,它的类型显示为unicode。我想找回我原来的名单。 我该怎么做 我的名单: [{"employee_id":13,"admin":false,"approver":false,"emp_code_or_email":"second@emp.com,120","manager":false,"emp_name":"second emp","department":"IT","position":"IT","new_e

我有一个从javascript文件发送到视图的字典列表。 现在,当我打印列表时,它的类型显示为unicode。我想找回我原来的名单。 我该怎么做

我的名单:

[{"employee_id":13,"admin":false,"approver":false,"emp_code_or_email":"second@emp.com,120","manager":false,"emp_name":"second emp","department":"IT","position":"IT","new_emp":false,"manager_and_approver":false,"role_type":"employee","s_no":1},{"employee_id":144,"admin":false,"approver":false,"emp_code_or_email":"107anku@gmail.com,1","manager":true,"emp_name":"A1 A2","department":"IT","position":"Developer","new_emp":false,"manager_and_approver":false,"role_type":"manager","s_no":2}]
我只想从这里取员工ID


我尝试了eval()、list()、encode('utf-8')。但是没有用。

当您打印任何对象时,python将显示此对象的python表示形式

要以您想要的方式显示,您应该格式化输出

但最简单的方法是将其转换为json,因为您从ajax接收它

import simplejson
simplejson.dumps(data)

您拥有的是JSON的字符串表示形式。我可以通过查看
“admin”:false
来判断,以便您获得
员工id
。首先需要将列表中的每个json表示转换为字典

>>> import json
>>> data_raw = '''[{"employee_id":13,"admin":false,"approver":false,"emp_code_or_email":"second@emp.com,120","manager":false,"emp_name":"second emp","department":"IT","position":"IT","new_emp":false,"manager_and_approver":false,"role_type":"employee","s_no":1},{"employee_id":144,"admin":false,"approver":false,"emp_code_or_email":"107anku@gmail.com,1","manager":true,"emp_name":"A1 A2","department":"IT","position":"Developer","new_emp":false,"manager_and_approver":false,"role_type":"manager","s_no":2}]'''
>>> data_json = json.loads(data_raw)
>>> [data['employee_id'] for data in data_json]
[13, 144]
>>> 

为什么字符串现在是unicode值是一个问题?它们毕竟是文本,Python可以处理这种混合(前提是您不尝试将非ASCII编码的数据与Unicode混合)
lst[0]['employee_id']
无论密钥是unicode还是字节字符串都有效。整个列表都是unicode。我试过你的代码,但它给了我这个错误“字符串索引必须是整数”你的意思是你有JSON吗?employee_list=post_dict['emps']print“emp list”,employee_list,emp在employee_list中键入(employee_list):print emp,type(emp)print“id”,emp[0]['employee_id']这是我试过的。