Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/343.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 dict中基于特定顺序的排序键_Python_List_Dictionary_Key - Fatal编程技术网

Python dict中基于特定顺序的排序键

Python dict中基于特定顺序的排序键,python,list,dictionary,key,Python,List,Dictionary,Key,我的代码: abc = { 'Name':emp_name, 'Id no':emp_idno, 'Leave taken':k, 'Leave reqd':b, 'Total days of leave':total, 'Reason':reason } 我得到的输出是: id, name, total, reqason, leave taken, leave reqd 我希望输出的顺序如下: Name, id, leave taken, leav

我的代码:

abc = {
   'Name':emp_name,
   'Id no':emp_idno, 
   'Leave taken':k, 
   'Leave reqd':b,
   'Total days of leave':total, 
   'Reason':reason
}
我得到的输出是:

id, name, total, reqason, leave taken, leave reqd
我希望输出的顺序如下:

Name, id, leave taken, leave reqd, total, reason
我被这件事难住了,如果有人能帮我,那就太好了

我的csv代码


默认情况下,
词典
是无序的

您需要一个
有序的
传统的

请参见
collections.OrderedDict

例如:


默认情况下,
词典
是无序的

您需要一个
有序的
传统的

请参见
collections.OrderedDict

例如:


一个简单的技巧就是将密钥存储在列表中

key_list = ['Name', 'Id no', 'Leave taken', 'Leave reqd', 'Total days of leave', 'Reason']
abc = {
'Name':emp_name,
'Id no':emp_idno, 
'Leave taken':k, 
'Leave reqd':b,
'Total days of leave':total, 
'Reason':reason
}

for k in key_list:
    print abc[k]

一个简单的技巧就是将密钥存储在列表中

key_list = ['Name', 'Id no', 'Leave taken', 'Leave reqd', 'Total days of leave', 'Reason']
abc = {
'Name':emp_name,
'Id no':emp_idno, 
'Leave taken':k, 
'Leave reqd':b,
'Total days of leave':total, 
'Reason':reason
}

for k in key_list:
    print abc[k]

我从用户那里得到输入。我的键是恒定的。那么,是否有可能在dict中对键进行排序,或者我应该将它们更改为list?我从用户那里获得输入。我的键是常量。那么,有没有可能在dict中对键进行排序,或者我应该将它们更改为list?当我将这个k或d写入csv文件时,可能的重复,正如mithilesh所说,csv文件的输出不遵循列表顺序我可以理解,我试图将列表写成csv而不是dict。我只是想知道当我将这个k或d写入csv文件时,如何更正自己,csv文件的输出不遵循列表顺序。我可以理解,我试图以csv格式而不是dict格式编写列表。我只是想知道解决方案,以便自己更正
key_list = ['Name', 'Id no', 'Leave taken', 'Leave reqd', 'Total days of leave', 'Reason']
abc = {
'Name':emp_name,
'Id no':emp_idno, 
'Leave taken':k, 
'Leave reqd':b,
'Total days of leave':total, 
'Reason':reason
}

for k in key_list:
    print abc[k]