擅长:python、mysql、java
<p>当您尝试对<code>dict</code>排序时,得到的是键。由于您的键都是整数,<code>sorted</code>会根据您提供的<code>key</code>按正确的顺序给您。但是,您需要的是按排序顺序排列的<code>dict</code>的元素。要获取元素,可以使用<code>T.values()</code>。在</p>
<p>使用这些值,<code>TaskGenerator()</code>函数将如下所示</p>
<pre><code>from random import randint
T=dict()
def TaskGenerator(N):
for i in range (0,N):
ExcTime=randint(1,20)
Period=randint(1,20)+ExcTime
Uterlization=ExcTime/Period
T[i]={'ID':i+1 , 'ExcTime' : ExcTime, 'Period' : Period, 'Uterlization':Uterlization}
return sorted(T.values(), key=lambda x:x['Period'])
TaskGenerator(6)
</code></pre>
<p>请注意,<code>T.values()</code>生成一个新的项列表,您必须<code>return</code>该列表才能在函数之外引用它。在</p>