实现:A、B两用户共用一个银行账户,此时用户A与用户B同时进入银行。其中A用户去取钱,B用户去存钱。存取完后都得输出账户余额(利用多线程)
时间: 2024-02-13 16:00:42 浏览: 85
可以使用Python中的`threading`模块来实现多线程操作。下面是实现的代码:
```python
import threading
# 初始账户余额为1000元
balance = 1000
# 取款操作
def withdraw_money(amount):
global balance
balance -= amount
print("A用户取款%d元,账户余额为%d元" % (amount, balance))
# 存款操作
def deposit_money(amount):
global balance
balance += amount
print("B用户存款%d元,账户余额为%d元" % (amount, balance))
if __name__ == "__main__":
# 用户A取款100元
t1 = threading.Thread(target=withdraw_money, args=(100,))
# 用户B存款200元
t2 = threading.Thread(target=deposit_money, args=(200,))
# 启动线程
t1.start()
t2.start()
# 等待线程结束
t1.join()
t2.join()
# 输出最终账户余额
print("账户余额为%d元" % balance)
```
在上述代码中,我们定义了两个函数`withdraw_money`和`deposit_money`,分别代表用户A的取款操作和用户B的存款操作。然后我们利用`threading.Thread`类创建了两个线程`t1`和`t2`,分别对应取款和存款操作。最后我们启动线程,并等待线程结束后输出最终的账户余额。
阅读全文