Python 函数计算错误,返回0而不是500k,我做错了什么?
我怎样才能解决这个问题Python 函数计算错误,返回0而不是500k,我做错了什么?,python,python-3.x,Python,Python 3.x,我怎样才能解决这个问题 pricec = { "Case" : 56950, "PSU" : 48950, "Mobo" : 59500, "GPU" : 124990, "Memory" : 57800, "CPU" : 53900, "SSD" : 99900, "Cooling" : 0 } total = 0 def pricet(total, pricec): for x in pricec:
pricec = {
"Case" : 56950,
"PSU" : 48950,
"Mobo" : 59500,
"GPU" : 124990,
"Memory" : 57800,
"CPU" : 53900,
"SSD" : 99900,
"Cooling" : 0
}
total = 0
def pricet(total, pricec):
for x in pricec:
total += pricec[x]
return total
pricet(total, pricec)
print ("Build Cost: " + str(total)+"kr")
您没有从
price()函数的返回值设置total变量
pricec = {
"Case" : 56950,
"PSU" : 48950,
"Mobo" : 59500,
"GPU" : 124990,
"Memory" : 57800,
"CPU" : 53900,
"SSD" : 99900,
"Cooling" : 0
}
def pricet(pricec):
total = 0
for x in pricec:
total += pricec[x]
return total
total = pricet(pricec)
print("Build Cost: " + str(total) + "k")
此外,还有一种比循环更简单的方法对字典的值求和:
def pricet(pricec):
return sum(pricec.values())
您没有从price()函数的返回值设置total变量
pricec = {
"Case" : 56950,
"PSU" : 48950,
"Mobo" : 59500,
"GPU" : 124990,
"Memory" : 57800,
"CPU" : 53900,
"SSD" : 99900,
"Cooling" : 0
}
def pricet(pricec):
total = 0
for x in pricec:
total += pricec[x]
return total
total = pricet(pricec)
print("Build Cost: " + str(total) + "k")
此外,还有一种比循环更简单的方法对字典的值求和:
def pricet(pricec):
return sum(pricec.values())