我在python中写下了这个程序
创建字典
IF <YOUR CONDITION>
BEGIN
SELECT *
FROM tbl1 t1
INNER JOIN tb2 t2
ON t1.Id = t2.id;
END
ELSE
BEGIN
SELECT *
FROM tbl1 t1;
END
运行循环后
a = { 'a':'b', 'x':'x', '2':'2' }
结果是
for c in a:
a[c]
我希望,应该有&#34; b x 2&#34;结果,但它会自动排序,为什么会发生这种情况,我该如何控制它?
答案 0 :(得分:1)
Dictionary 没有排序,接收密钥的顺序基本上取决于python实现。您的代码不应该依赖它。
来自documentation -
最好将字典视为无序密钥组:值对,并要求密钥是唯一的(在一个字典中)
如果订单对您的计划很重要,请使用collections.OrderedDict
。示例 -
>>> from collections import OrderedDict
>>> d = OrderedDict([('a','b'),('x','x'),('2','2')])
>>> for c in d:
... d[c]
...
'b'
'x'
'2'