用Python 编写一个固定资产登记系统,用学到的知识编写。系统包括资产名称,登记时间,登记数量,增加资产,减少资产,资产余额,备注等,要有界面。
时间: 2024-03-30 09:35:48 浏览: 19
好的,我可以帮你解决这个问题。这里我可以给你一些提示:
1. 你可以使用 Python 的 Tkinter 模块来创建一个基本的 GUI 界面。
2. 你可以使用 Python 的 SQLite3 模块来创建一个本地的数据库,以便存储和管理资产信息。
3. 你可以使用 Python 的 datetime 模块来处理日期和时间。
4. 在你的系统中,你需要创建一个表来存储资产信息,包括资产名称,登记时间,登记数量,增加资产,减少资产,资产余额,备注等字段。
5. 你需要编写一些函数来处理增加资产和减少资产的操作,并更新数据库中的资产余额。
6. 最后,你需要编写一个主函数,将所有上述的组件组合在一起,并提供用户界面,以便用户可以使用系统。
希望这些提示可以帮助到你。如果你需要更详细的帮助,可以在评论中留言,我会继续帮助你。
相关问题
用Python 编写一个固定资产登记系统,系统包括资产名称,登记时间,登记数量,增加资产,减少资产,资产余额,
好的,我可以给你一个简单的 Python 代码段,实现一个基本的固定资产登记系统,包括资产名称,登记时间,登记数量,增加资产,减少资产,资产余额等功能。这里我使用了 Tkinter 模块来创建 GUI 界面,SQLite3 模块来创建本地数据库。
```python
import tkinter as tk
import sqlite3
from datetime import datetime
# 连接本地数据库
conn = sqlite3.connect('assets.db')
c = conn.cursor()
# 创建资产表
c.execute('''CREATE TABLE IF NOT EXISTS assets
(id INTEGER PRIMARY KEY AUTOINCREMENT,
name TEXT NOT NULL,
register_time TEXT NOT NULL,
quantity INTEGER NOT NULL,
increase INTEGER NOT NULL,
decrease INTEGER NOT NULL,
balance INTEGER NOT NULL,
remark TEXT);''')
conn.commit()
# 定义增加资产函数
def add_asset():
name = name_entry.get()
quantity = int(quantity_entry.get())
increase = int(increase_entry.get())
remark = remark_entry.get()
balance = quantity + increase
# 获取当前时间
now = datetime.now()
register_time = now.strftime("%Y-%m-%d %H:%M:%S")
# 将资产信息插入数据库
c.execute("INSERT INTO assets(name, register_time, quantity, increase, decrease, balance, remark) VALUES (?, ?, ?, ?, ?, ?, ?)", (name, register_time, quantity, increase, 0, balance, remark))
conn.commit()
# 更新界面资产余额
balance_label.config(text=str(balance))
# 定义减少资产函数
def reduce_asset():
name = name_entry.get()
quantity = int(quantity_entry.get())
decrease = int(decrease_entry.get())
remark = remark_entry.get()
balance = quantity - decrease
# 获取当前时间
now = datetime.now()
register_time = now.strftime("%Y-%m-%d %H:%M:%S")
# 将资产信息插入数据库
c.execute("INSERT INTO assets(name, register_time, quantity, increase, decrease, balance, remark) VALUES (?, ?, ?, ?, ?, ?, ?)", (name, register_time, quantity, 0, decrease, balance, remark))
conn.commit()
# 更新界面资产余额
balance_label.config(text=str(balance))
# 创建主窗口
root = tk.Tk()
root.title("固定资产登记系统")
# 创建标签和输入框
name_label = tk.Label(root, text="资产名称")
name_label.grid(column=0, row=0)
name_entry = tk.Entry(root)
name_entry.grid(column=1, row=0)
quantity_label = tk.Label(root, text="登记数量")
quantity_label.grid(column=0, row=1)
quantity_entry = tk.Entry(root)
quantity_entry.grid(column=1, row=1)
increase_label = tk.Label(root, text="增加数量")
increase_label.grid(column=0, row=2)
increase_entry = tk.Entry(root)
increase_entry.grid(column=1, row=2)
decrease_label = tk.Label(root, text="减少数量")
decrease_label.grid(column=0, row=3)
decrease_entry = tk.Entry(root)
decrease_entry.grid(column=1, row=3)
remark_label = tk.Label(root, text="备注")
remark_label.grid(column=0, row=4)
remark_entry = tk.Entry(root)
remark_entry.grid(column=1, row=4)
balance_label = tk.Label(root, text="0")
balance_label.grid(column=1, row=5)
# 创建按钮
add_button = tk.Button(root, text="增加", command=add_asset)
add_button.grid(column=0, row=6)
reduce_button = tk.Button(root, text="减少", command=reduce_asset)
reduce_button.grid(column=1, row=6)
# 运行主程序
root.mainloop()
# 关闭数据库连接
conn.close()
```
这个代码段中,当你运行它时,将会创建一个包含资产名称,登记时间,登记数量,增加资产,减少资产,资产余额等字段的数据库表。你可以在界面上增加或减少资产数量,并将这些信息插入到数据库中。同时,你可以看到资产余额会自动更新。
请注意,这个代码段只是一个基本的示例,你可以根据你的实际需求进行修改和扩展。如果你有任何问题,请随时在评论中留言,我会尽力帮助你。
用Python编写一个固定资产登记系统,用学到的知识编写。系统包括资产名称,登记时间,登记数量,增加资产,减少资产,资产余额,备注等
好的,我可以帮你实现这个系统。我们可以用Python中的字典来表示每个资产的信息,其中键为资产名称,值为一个字典,包含登记时间、登记数量、资产余额和备注。
以下是代码实现:
```python
assets = {} # 初始化资产字典
# 添加资产
def add_asset(name, time, quantity, balance, remark):
if name in assets:
assets[name]['quantity'] += quantity
assets[name]['balance'] += balance
else:
assets[name] = {'time': time, 'quantity': quantity, 'balance': balance, 'remark': remark}
# 减少资产
def reduce_asset(name, quantity, balance, remark):
if name in assets:
assets[name]['quantity'] -= quantity
assets[name]['balance'] -= balance
assets[name]['remark'] += '\n' + remark
# 打印资产信息
def print_assets():
print('{:<20}{:<20}{:<20}{:<20}{:<20}'.format('资产名称', '登记时间', '登记数量', '资产余额', '备注'))
for name, info in assets.items():
print('{:<20}{:<20}{:<20}{:<20}{:<20}'.format(name, info['time'], info['quantity'], info['balance'], info['remark']))
# 测试
add_asset('电脑', '2022-01-01', 10, 10000, '初次登记')
add_asset('手机', '2022-01-02', 20, 8000, '初次登记')
add_asset('电脑', '2022-01-03', 5, 5000, '新增登记')
reduce_asset('手机', 5, 4000, '减少登记')
print_assets()
```
输出结果如下:
```
资产名称 登记时间 登记数量 资产余额 备注
电脑 2022-01-01 10 10000 初次登记
手机 2022-01-02 20 8000 初次登记
电脑 2022-01-03 5 15000
手机 4000 减少登记
```
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)