<p>嘿,我有一个项目,我正在生成1到4个49次的随机数,并将它们添加到列表中。这些数字应该代表smartie的一种颜色。然后,我不得不将该列表的结果分成它们自己的列表,我也设法做到了这一点。但现在它要我按长度比较这些列表,并打印出最长和最短列表的名称。(哪种颜色最多,哪种颜色最少。)这是我试过的。我真的不知道该怎么做</p>
<pre><code>
list = open('list.txt', 'w')
fields = None
redList = []
blueList = []
yellowList = []
greenList = []
biggestList = 0
smallestList = 0
for count in range(49):
randNum = random.randint(1, 4)
if randNum == 1:
smartyColor = 'Red'
list.write('1 ')
elif randNum == 2:
smartyColor = 'Blue'
list.write('2 ')
elif randNum == 3:
smartyColor = 'Green'
list.write('3 ')
elif randNum == 4:
smartyColor = 'Yellow'
list.write('4 ')
list.close()
list = open('list.txt', 'r')
for line in list:
fields = line.split()
for field in fields:
if field == '1':
redList.append(field)
elif field == '2':
blueList.append(field)
elif field == '3':
greenList.append(field)
elif field == '4':
yellowList.append(field)
if redList == blueList:
print("There are as many red smarties as blue smarties.")
elif redList == greenList:
print("There are as many red smarties as green smarties.")
elif redList == yellowList:
print("There are as may red smarties as yellow smarties.")
if blueList == greenList:
print("There are as many blue smarties as there are green smarties.")
elif blueList == yellowList:
print("There are as many blue smarties as yellow smarties.")
if greenList == yellowList:
print("There are as many green smarties as there are yellow smarties.")
if redList > biggestList:
biggestList = redList
elif blueList > biggestList:
biggestList = blueList
elif greenList > biggestList:
biggestList = greenList
else:
biggestList = yellowList
print("The biggest list was ",biggestList,"." )
if redList < smallestList:
smallestList = redList.Length
elif blueList < smallestList:
smallestList = blueList
elif greenList < smallestList:
smallestList = greenList
else:
smallestList = yellowList
print("The smallest list was ",smallestList,"." )
</code></pre>