Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.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字典乘法_Python_List_Dictionary - Fatal编程技术网

Python字典乘法

Python字典乘法,python,list,dictionary,Python,List,Dictionary,假设我们有: dict = {1:[2, 3]} m = 4 new = {1:[]} # to save time, the keys in "new" were obtained from "dict" 我想用“dict”来表示“new”,使每个值在“dict”列表中出现的次数与“m”相同,以便: 如何通过使用for循环来实现这一点?这让我有点困惑,因为我使用了很多for循环,任何帮助都将不胜感激。 我更希望你们能给出一些想法,而不是给我代码。应该能让你们很好地了解如何处理这种情况 Pyt

假设我们有:

dict = {1:[2, 3]}
m = 4
new = {1:[]} # to save time, the keys in "new" were obtained from "dict"
我想用“dict”来表示“new”,使每个值在“dict”列表中出现的次数与“m”相同,以便:

如何通过使用for循环来实现这一点?这让我有点困惑,因为我使用了很多for循环,任何帮助都将不胜感激。 我更希望你们能给出一些想法,而不是给我代码。

应该能让你们很好地了解如何处理这种情况

Python允许您将想要重复的内容“乘以”重复次数

编辑:哇。。等等-你不是已经在“复制列表线程中的元素”上发布了吗?

应该能让你很好地了解如何在这种情况下继续

Python允许您将想要重复的内容“乘以”重复次数


编辑:哇。。等等-您不是已经在“复制列表线程中的元素”上发布了吗?

如果您不关心顺序:

data = {1: [2,3]}
m = 4

# gives {1:[2,3,2,3,2,3,2,3]}
new_data = { k:v*m for k,v in data.items()}

如果您不关心订单:

data = {1: [2,3]}
m = 4

# gives {1:[2,3,2,3,2,3,2,3]}
new_data = { k:v*m for k,v in data.items()}
data = {1: [2,3]}
m = 4

# gives {1:[2,3,2,3,2,3,2,3]}
new_data = { k:v*m for k,v in data.items()}
>>> from itertools import chain, repeat
>>> data = {1: [2,3]}
>>> m = 4
>>> {k: list(chain.from_iterable(repeat(i, m) for i in data[k])) for k in data}
{1: [2, 2, 2, 2, 3, 3, 3, 3]}