Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/345.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 TypeError:不支持*:“dict”和“int”的操作数类型_Python_Dictionary - Fatal编程技术网

Python TypeError:不支持*:“dict”和“int”的操作数类型

Python TypeError:不支持*:“dict”和“int”的操作数类型,python,dictionary,Python,Dictionary,当我运行以下代码时,标题中出现了错误 amount = int(input('How many packs do you want?')) pack = {'nuts':4.0, 'bolts':300.0, 'screws':140.0, 'wire(m)':3.5} for key,val in pack.items(): total = pack * amount print(total,key) 我假设这是因为字典中的

当我运行以下代码时,标题中出现了错误

amount = int(input('How many packs do you want?'))

pack = {'nuts':4.0,
        'bolts':300.0,
        'screws':140.0,
        'wire(m)':3.5}

for key,val in pack.items():
    total = pack * amount
    print(total,key)
我假设这是因为字典中的值不是整数。如何修复代码,使其不会出现此错误

它应该打印此人将收到的物品数量,例如,如果有人订购了2个包装,它将打印:

8.0螺母 600.0螺栓 280.0螺钉 7.0 wirem

如果计算的总数错误,则需要与val相乘,而不是与pack相乘,因为pack是一个dict。请使用以下公式代替total=val*金额,而不是total=pack*金额:

因此,不,原因不是字典中的值不是整数。

您计算的总数是错误的,您需要与val相乘,而不是与作为dict的pack相乘。请使用以下公式代替total=val*amount,而不是total=pack*amount:

所以不,原因不是字典中的值不是整数。

这是因为typepack是,typeamount是

类“dict”中没有可用的方法可以执行整数类型的乘法运算

正如mu所提到的,你应该用val乘以它。

这是因为typepack是,typeamount是

类“dict”中没有可用的方法可以执行整数类型的乘法运算


因此,正如mu所提到的,你应该将其乘以val。

将字典乘以整数会产生什么结果?它会显示此人将收到的东西的数量,例如,如果有人订购了2包,他们将收回600个螺栓。穆明确了这个问题。我会编辑。一本字典乘以一个整数会产生什么结果?它会显示这个人将收到的东西的数量,例如,如果有人订购了2包,他们将得到600个螺栓。穆明确了这个问题。我会编辑。
for key,val in pack.items():
    total = val * amount
    print(total,key)