from random import shuffle
items = [
["e",None,None],
["pork","pork.png","meat"],
["beef","b.png","meat"],
["cheese","c.png","not"],
]
items_dict = {u[0]: u for u in items}
items_list = ["e","beef","pork","beef"]
shuffle(items_list)
for s in items_list:
print(s, items_dict[s])
这个怎么样:
输出:
这可能比@pm2ring的答案慢(我没有测量),因为有两个循环和异常处理。你知道吗
使用
orig_item[1]
访问子列表的第二个元素您可以将
items
子列表存储在字典中,按它们的第一个元素进行索引。你知道吗输出
要打印第二项(即PNG):
输出
这是相当有效的,因为没有创建新的列表:
items_dict
中的列表与items
中的列表对象相同。因此,如果需要,可以通过items
或items_dict
对这些列表进行变异。你知道吗输出
你不需要这个
items_dict
,但是另一个选择是一个双for
循环,如果items
很大,它会变得非常低效。你知道吗输出
相关问题 更多 >
编程相关推荐