这里为什么要加一个初始值balance = 0
来源:2-4 多线程并发问题
weixin_慕妹5398817
2021-05-13 15:05:10
好像不加这个初始值就运行不了
相关代码:
import threading
balance = 0
def change_it(n):
"""改变我的余额"""
global balance
balance = balance + n
balance = balance - n
print('----------------{0}'.format(n))
class ChangeBalanceThread(threading.Thread):
def __init__(self, num, *args, **kwargs):
super().__init__(*args, **kwargs)
self.num = num
def run(self):
for i in range(1000):
change_it(self.num)
if __name__ == '__main__':
t1 = ChangeBalanceThread(5)
t2 = ChangeBalanceThread(8)
t1.start()
t2.start()
t1.join()
t2.join()
print('the last:{0}'.format(balance))
1回答
同学,你好!balance=0表示定义该变量并赋初始值,只有定义了才可以在后边代码中使用,没有定义肯定是用不了的
祝学习愉快!
相似问题
回答 2
回答 3