python - 为什么需要声明变量但有时在 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 以及何时不应该声明的定义?
解决方案
total = h + total
打算增加当前的h
价值total
。如果没有事先说明total
当前是什么,就没有添加的价值h
。
简单来说,如果您删除该total = 0
语句,请逐行浏览代码,当您到达时total = h + total
,应该h + total
是什么,它是未定义的。
推荐阅读
- postgresql - Airflow 2.0.2:Dag 无法正确渲染模板
- r - if (getOption("Cardinal.dark")) { 中的错误:参数长度为零
- machine-learning - 如何逆向构建混淆矩阵形式评估指标值?
- php - 如何回显内部连接列名称
- flutter - 如何在 FutureBuilder Flutter 中停止循环 SetState
- node.js - NPM 包锁查询
- c++ - C、C++ 和 D (dlang) 的编译器资源管理器程序集输出
- flutter - Flutter SetState 不刷新 UI
- android - 在 Android Emulator 上运行应用程序时,如何在 Ionic React 应用程序中使用社区 HTTP 插件?
- python - 在图中创建断轴