用python写个文件管理系统
时间: 2023-11-19 11:01:32 浏览: 51
好的,很乐意回答你的问题。文件管理系统是一种用于管理计算机文件的应用程序。以下是一个简单的用Python语言编写的文件管理系统的代码示例:
```python
import os
while True:
print("请选择一个选项:")
print("1. 列出当前目录下的所有文件")
print("2. 创建新文件")
print("3. 删除文件")
print("4. 退出程序")
choice = input("请输入选项数字:")
if choice == "1":
print(os.listdir())
elif choice == "2":
filename = input("请输入要创建的文件名:")
with open(filename, "w") as f:
pass
elif choice == "3":
filename = input("请输入要删除的文件名:")
os.remove(filename)
elif choice == "4":
break
else:
print("输入有误,请重新输入!")
```
该代码显示一个简单菜单,让用户选择要执行的操作。用户可以选择列出当前目录下的所有文件,创建新文件,删除文件或退出程序。
相关问题
用python这个文件管理系统
Python提供了许多内置的文件管理函数和模块,可以方便地处理文件和目录。
1. 创建文件夹
使用os.makedirs()函数可以创建多层目录,例如:
```
import os
os.makedirs('/path/to/new/folder')
```
2. 删除文件夹
使用os.rmdir()函数可以删除一个空的文件夹,如果文件夹不为空,可以使用shutil.rmtree()函数强制删除,例如:
```
import os
import shutil
os.rmdir('/path/to/folder')
shutil.rmtree('/path/to/folder')
```
3. 获取文件列表
使用os.listdir()函数可以获取指定目录下的所有文件和文件夹,例如:
```
import os
files = os.listdir('/path/to/folder')
print(files)
```
4. 复制文件
使用shutil.copy()函数可以复制文件,例如:
```
import shutil
shutil.copy('/path/to/source/file', '/path/to/target/file')
```
5. 移动文件
使用shutil.move()函数可以移动文件,例如:
```
import shutil
shutil.move('/path/to/source/file', '/path/to/target/file')
```
6. 重命名文件
使用os.rename()函数可以重命名文件或文件夹,例如:
```
import os
os.rename('/path/to/old/file', '/path/to/new/file')
```
7. 判断文件是否存在
使用os.path.exists()函数可以判断文件或文件夹是否存在,例如:
```
import os
if os.path.exists('/path/to/file'):
print('File exists')
else:
print('File does not exist')
```
8. 获取文件大小
使用os.path.getsize()函数可以获取文件大小,例如:
```
import os
size = os.path.getsize('/path/to/file')
print(size)
```
9. 获取文件创建时间和修改时间
使用os.path.getctime()和os.path.getmtime()函数可以获取文件创建时间和修改时间,例如:
```
import os
ctime = os.path.getctime('/path/to/file')
mtime = os.path.getmtime('/path/to/file')
print(ctime, mtime)
```
以上是Python中一些常用的文件管理函数和模块,可以实现基本的文件和目录操作。
用Python写一个管理系统
好的,管理系统的功能有很多种,可以是商品管理、订单管理、员工管理等等。这里我以商品管理系统为例,给出一个简单的Python代码。
首先是需要用到的库和数据:
```python
import csv
# 商品数据
products = [
{"id": 1, "name": "Apple", "price": 5},
{"id": 2, "name": "Banana", "price": 10},
{"id": 3, "name": "Orange", "price": 7},
]
# 数据存储文件
filename = "products.csv"
```
接下来是需要实现的功能:
1. 显示全部商品信息
2. 添加新商品
3. 修改商品信息
4. 删除商品
```python
def show_products():
"""显示所有商品信息"""
print("ID\tName\tPrice")
for product in products:
print(f"{product['id']}\t{product['name']}\t{product['price']}")
print()
def add_product():
"""添加新商品"""
name = input("请输入商品名称:")
price = float(input("请输入商品价格:"))
# 获取最大ID
max_id = max(products, key=lambda x: x["id"])["id"]
product = {"id": max_id + 1, "name": name, "price": price}
products.append(product)
save_data()
def modify_product():
"""修改商品信息"""
id = int(input("请输入要修改的商品ID:"))
product = next((p for p in products if p["id"] == id), None)
if product:
print(f"当前商品信息为:{product['name']} {product['price']}")
name = input("请输入新的商品名称:")
price = float(input("请输入新的商品价格:"))
product["name"] = name
product["price"] = price
save_data()
else:
print(f"未找到ID为{id}的商品!")
def delete_product():
"""删除商品"""
id = int(input("请输入要删除的商品ID:"))
product = next((p for p in products if p["id"] == id), None)
if product:
products.remove(product)
save_data()
print(f"已删除ID为{id}的商品!")
else:
print(f"未找到ID为{id}的商品!")
def save_data():
"""保存数据到文件"""
with open(filename, "w", newline="") as csvfile:
fieldnames = ["id", "name", "price"]
writer = csv.DictWriter(csvfile, fieldnames=fieldnames)
writer.writeheader()
for product in products:
writer.writerow(product)
def load_data():
"""从文件加载数据"""
try:
with open(filename, newline="") as csvfile:
reader = csv.DictReader(csvfile)
products.clear()
for row in reader:
product = {"id": int(row["id"]), "name": row["name"], "price": float(row["price"])}
products.append(product)
except FileNotFoundError:
pass
# 加载数据
load_data()
# 主循环
while True:
print("1. 显示所有商品信息")
print("2. 添加新商品")
print("3. 修改商品信息")
print("4. 删除商品")
print("5. 退出系统")
choice = input("请输入操作编号:")
if choice == "1":
show_products()
elif choice == "2":
add_product()
elif choice == "3":
modify_product()
elif choice == "4":
delete_product()
elif choice == "5":
break
else:
print("输入有误,请重新输入!")
```
这个管理系统使用了CSV文件来存储数据,并提供了显示、添加、修改、删除等功能。你可以根据实际需求进行扩展或修改。