首页 > 解决方案 > 为什么需要声明变量但有时在 Python 中不需要?

问题描述

我知道 Python 变量在第一次像示例 1 一样声明时可以使用,但是当我尝试不带行的示例 2 时total = 0,它会出现NameError: 'name' total is not defined. 为什么?

示例 1

dmil = float(input("Enter the distance (miles): "))
dis = dmil * 1.61
print("The distance in miles {} is equal to {} in 
kilometer.".format(dmil,dis))

示例 2

total = 0  #why I necessarily need this?
for i in range (1,4):
    h = float(input("Enter the {} height: ".format(i)))
    total = h + total
avg = total/3
print("The average height of the 3 cousins is ",avg)

当我输入程序时,我真的很困惑,是否有关于何时应该首先声明 var 以及何时不应该声明的定义?

标签: pythonvariables

解决方案


total = h + total打算增加当前的h价值total。如果没有事先说明total当前是什么,就没有添加的价值h

简单来说,如果您删除该total = 0语句,请逐行浏览代码,当您到达时total = h + total,应该h + total是什么,它是未定义的。


推荐阅读