python设计宿舍管理系统并录入excel中
时间: 2023-08-15 10:31:17 浏览: 167
下面是一个简单的宿舍管理系统的代码示例。我们使用Python中的openpyxl库来操作Excel文件。
```python
from openpyxl import Workbook, load_workbook
# 加载Excel文件
try:
wb = load_workbook('dormitory.xlsx')
ws = wb.active
except:
# 如果文件不存在则创建一个新的Workbook
wb = Workbook()
ws = wb.active
# 设置表头
ws['A1'] = '宿舍号'
ws['B1'] = '可住人数'
ws['C1'] = '已住人数'
# 添加宿舍信息
def add_dormitory(dormitory, max_num):
# 获取最后一行的行号
last_row = ws.max_row
# 插入一行数据
ws.cell(row=last_row+1, column=1, value=dormitory)
ws.cell(row=last_row+1, column=2, value=max_num)
ws.cell(row=last_row+1, column=3, value=0)
# 保存Excel文件
wb.save('dormitory.xlsx')
# 查询宿舍信息
def search_dormitory(dormitory):
# 遍历Excel表格查找宿舍号匹配的宿舍信息
for row in ws.iter_rows(min_row=2, max_col=3, values_only=True):
if row[0] == dormitory:
return f"宿舍号:{row[0]},可住人数:{row[1]},已住人数:{row[2]}"
return "未找到该宿舍信息"
# 添加入住信息
def add_checkin(dormitory):
# 遍历Excel表格查找宿舍号匹配的宿舍信息
for row in ws.iter_rows(min_row=2, max_col=3, values_only=True):
if row[0] == dormitory:
# 判断是否已经满员
if row[2] >= row[1]:
return "该宿舍已满员"
# 更新已住人数
ws.cell(row=row[0].row, column=3, value=row[2]+1)
# 保存Excel文件
wb.save('dormitory.xlsx')
return "入住成功"
return "未找到该宿舍信息"
# 删除入住信息
def delete_checkin(dormitory):
# 遍历Excel表格查找宿舍号匹配的宿舍信息
for row in ws.iter_rows(min_row=2, max_col=3, values_only=True):
if row[0] == dormitory:
# 判断是否已经无人入住
if row[2] <= 0:
return "该宿舍无人入住"
# 更新已住人数
ws.cell(row=row[0].row, column=3, value=row[2]-1)
# 保存Excel文件
wb.save('dormitory.xlsx')
return "退房成功"
return "未找到该宿舍信息"
```
在使用前需要先安装openpyxl库,可以使用以下命令进行安装:
```
pip install openpyxl
```
然后就可以通过调用add_dormitory、search_dormitory、add_checkin和delete_checkin函数实现宿舍信息的添加、查询和入住/退房了。
阅读全文