pychram,写一个窗口中文对话的产品库存管理系统,可以录入和查询,可以新增产品,数据本地保存,如果没有本地文件库就新建一个
时间: 2023-11-19 15:05:57 浏览: 135
产品库存管理系统
4星 · 用户满意度95%
好的,首先你需要安装 PyQt5 库来开发窗口应用程序。可以通过在终端中输入命令 `pip install pyqt5` 来安装。
接下来,你可以使用 Python 的文件操作模块来创建和管理本地文件。可以使用 pickle 模块来将 Python 对象序列化为文件。以下是一个简单的示例代码:
```python
import pickle
# 创建一个字典对象
inventory = {"apple": 10, "banana": 20, "orange": 30}
# 将字典对象保存到本地文件
with open("inventory.pkl", "wb") as f:
pickle.dump(inventory, f)
# 从本地文件中读取字典对象
with open("inventory.pkl", "rb") as f:
inventory = pickle.load(f)
print(inventory)
```
接下来,你可以使用 PyQt5 创建窗口应用程序。以下是一个简单的示例代码:
```python
import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QLabel, QLineEdit, QPushButton
class ProductInventoryManager(QMainWindow):
def __init__(self):
super().__init__()
# 设置窗口标题和大小
self.setWindowTitle("产品库存管理系统")
self.setGeometry(100, 100, 400, 300)
# 创建标签、文本框和按钮
self.label_name = QLabel(self)
self.label_name.setText("产品名称:")
self.label_name.move(50, 50)
self.text_name = QLineEdit(self)
self.text_name.move(150, 50)
self.label_quantity = QLabel(self)
self.label_quantity.setText("产品数量:")
self.label_quantity.move(50, 100)
self.text_quantity = QLineEdit(self)
self.text_quantity.move(150, 100)
self.button_add = QPushButton(self)
self.button_add.setText("新增产品")
self.button_add.move(150, 150)
self.button_add.clicked.connect(self.add_product)
# 显示窗口
self.show()
def add_product(self):
# 从文本框中获取产品名称和数量
name = self.text_name.text()
quantity = int(self.text_quantity.text())
# 从本地文件中读取库存数据
try:
with open("inventory.pkl", "rb") as f:
inventory = pickle.load(f)
except FileNotFoundError:
inventory = {}
# 更新库存数据
inventory[name] = inventory.get(name, 0) + quantity
# 将库存数据保存到本地文件
with open("inventory.pkl", "wb") as f:
pickle.dump(inventory, f)
# 清空文本框
self.text_name.setText("")
self.text_quantity.setText("")
if __name__ == "__main__":
app = QApplication(sys.argv)
window = ProductInventoryManager()
sys.exit(app.exec_())
```
以上代码创建了一个窗口,可以输入产品名称和数量,点击“新增产品”按钮可以将产品添加到本地文件库存数据中。如果本地文件不存在,则会自动创建一个新的库存文件。
你可以根据自己的需求来扩展这个程序,例如添加查询功能或者更多的产品信息等。
阅读全文