利用python写出以下要求 1.可以从键盘录入会计科目和对应的金额 a)例如:银行存款 100000 b)例如:固定资产 100000 2.可以保存会计科目和对应的金额 3. 录入完成后可以打印完整正确的会计分录 a)例如:借:固定资产 100000 货:银行存款 100000 4.可以录入多个复杂会计分录 5. 可以利用试算平衡实时监测输入的会计分录,如果输入金额有错误、会计科目有错误可以及时提醒。 6. 在所有分录输入完毕之后可以打印输出试算平衡表
时间: 2024-03-23 20:41:38 浏览: 79
代码实现如下:
```python
account_dict = {} # 用于保存会计科目和对应的金额的字典
journal_list = [] # 用于保存所有的会计分录的列表
debit_sum = 0 # 借方金额总和
credit_sum = 0 # 贷方金额总和
# 定义输入会计分录的函数
def input_journal():
global account_dict
global journal_list
global debit_sum
global credit_sum
account = input("请输入会计科目:")
amount_str = input("请输入金额:")
# 检查输入金额是否为数字
try:
amount = float(amount_str)
except ValueError:
print("输入金额不合法,请重新输入!")
return
# 检查会计科目是否已存在
if account in account_dict:
print("会计科目已存在,请勿重复输入!")
return
# 将会计科目和对应的金额保存到字典中
account_dict[account] = amount
# 判断是借方还是贷方
while True:
direction = input("请输入方向(借/贷):")
if direction == "借":
debit_sum += amount
journal_list.append(("借", account, amount))
break
elif direction == "贷":
credit_sum += amount
journal_list.append(("贷", account, amount))
break
else:
print("输入方向不合法,请重新输入!")
print("会计分录录入成功!")
# 定义输出完整正确的会计分录的函数
def print_journal():
for journal in journal_list:
print("方向:{},会计科目:{},金额:{}".format(journal[0], journal[1], journal[2]))
# 定义计算试算平衡的函数
def calculate_trial_balance():
global debit_sum
global credit_sum
# 如果借方金额总和等于贷方金额总和,输出试算平衡表格
if debit_sum == credit_sum:
print("试算平衡表:")
print("借方金额总和:", debit_sum)
print("贷方金额总和:", credit_sum)
print("试算平衡!")
# 否则,输出试算平衡不平衡的提示信息
else:
print("试算平衡表:")
print("借方金额总和:", debit_sum)
print("贷方金额总和:", credit_sum)
print("试算平衡不平衡!")
# 主程序
while True:
input_journal() # 输入会计分录
choice = input("是否继续输入?(是/否)")
if choice == "否":
break
print_journal() # 输出完整正确的会计分录
calculate_trial_balance() # 计算试算平衡
```
注意:此代码中未对输入的会计科目和金额进行严格的格式检查,实际应用中需要加上相应的检查逻辑。
阅读全文