Python中文
首页
教程
问答
标签
搜索
登录
注册
函数中未定义python变量
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我需要一些关于python变量的帮助。我有一个草图,它将变量发送到一个名为roomControl的函数。如果在这个功能期间,状态与以前有所不同,那么我希望它做些什么。目前它应该打印出变量值。在</p> <p>我得到一个错误,状态变量没有被分配,我相信这是由于它被设置在函数之外。但是如果我在函数中设置变量,那么这将覆盖这些变量的函数控制。(希望这有道理)</p> <p>我的脚本如下,但基本上,如果状态改变,然后打印出来的东西是我要实现的</p> <pre><code>import MySQLdb status = 0 previousStatus = 0 connSolar = MySQLdb.connect("localhost", "######", "#######", "######") cursSolar = connSolar.cursor() def roomControl(name, demand, thermostat, roomTemp): if demand == 1 and thermostat > roomTemp: status = 1 if demand == 1 and thermostat < roomTemp: status = 0 if demand == 0: status = 0 if (status == 1 and previousStatus == 0): print("Room: %s, Heating demand = %s, Thermostate = %s, Room Temp = %s, Status = %s") % (name, demand, thermostat, roomTemp, status) print("") previousStatus = status return (status) while 1: Ntemp = 25 try: cursSolar.execute ("SELECT * FROM roomHeatingControl") connSolar.commit() for reading in cursSolar.fetchall(): Nthermostat = reading[6] NSW = reading[7] except (MySQLdb.Error, MySQLdb.Warning) as e: print (e) NPy_status = roomControl('Niamh', NSW, Nthermostat, Ntemp) </code></pre>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>这是相关的全局、局部变量类型。你可以在这里找到<a href="https://www.programiz.com/python-programming/global-keyword" rel="nofollow noreferrer">https://www.programiz.com/python-programming/global-keyword</a>解释。在</p> <p>您只需将“状态”定义为全局。在</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
如何在乒乓球比赛中预测球的轨迹,对于AI球拍预测?
1 回答
如何在乒乓球游戏中阻止球
3 回答
如何在乘法和模中不乘空间?
2 回答
如何在乘法和除以2个不同的数字之间进行交换?
5 回答
如何在也是数据一部分的单个字符上拆分大字符串
10 回答
如何在乾草堆中找到針,有更好的解決方案嗎?
5 回答
如何在事件wxWidgets中传递自定义数据
1 回答
如何在事件中使用lambda i=i?
1 回答
如何在事件中心只接收最近的数据
2 回答
如何在事件发生之前保持云函数运行?
5 回答
如何在事件发生后使页面重定向到同一页面
1 回答
如何在事件回调之间保持python生成器的状态
3 回答
如何在事件处理程序(pythonsocket、sphinx)中保留docstring
3 回答
如何在事件处理程序中更改wxRichTextCtrl的光标位置?
1 回答
如何在事件处理程序中访问外部对象?
7 回答
如何在事件循环中将协程打包为正常函数?
7 回答
如何在事件循环之外运行协同程序?
6 回答
如何在事件循环结束时为并发未来的所有线程调用类方法?
6 回答
如何在事件文件中只保留一份摘要?
6 回答
如何在事件模板中添加事件
10 回答