python - 将变量分配给类的实例,然后不断更新它
问题描述
我想创建一个包含外部变量的类的实例。该类应不断更新不断更改的外部变量。
这是我的代码,它将解释我的意思。但是,此代码不会更新分配给该类的变量,因为我的方法不正确。
class Update_variable(QtCore.QThread):
def __init__(self, VariablName):
QtCore.QThread.__init__(self)
self.VariablName = VariablName
def run(self):
while True:
variable = self.VariablName
print("Value updated to: ", variable)
time.sleep(1.0)
if __name__ == '__main__':
var1 = 0.0
var2 = 1.1
update_var1 = Update_variable(var1)
update_var2 = Update_variable(var2)
update_var1.start()
update_var2.start()
while True:
var1 = random()
var2 = random()
print("New value for var1: ",var1)
print("New value for var2: ",var2)
time.sleep(1.0)
解决方案
你不能这样做,因为变量是通过赋值传递的。
但是 Python 文档本身为我们提供了一些选择:https ://docs.python.org/3/faq/programming.html#how-do-i-write-a-function-with-output-parameters-call-by-参考
推荐阅读
- android - Flutter 致命异常:java.lang.RuntimeException:传递结果失败 ResultInfo{who=null, request=1, result=0, data=Intent
- react-native - React Native 混淆和 Hermes
- java - 我可以按像素(css位置)定位元素吗?Java,硒
- html - 垂直对齐asp中的文本:LinkButton
- ansible - Ansible 2.4 跳过选项
- javascript - 制作体重和身高转换器,如何使用按钮在身高和体重转换之间切换?
- microsoft-cognitive - Microsoft 认知容器无法到达端点
- html - 如何使用 fxFlex 分配和调整元素大小?
- memory - Knex.js:JavaScript 堆内存不足
- applescript - 如何在 AppleScript 中将列表的每个元素作为新行返回?