Python简易版停车管理系统

yipeiwu_com5年前Python基础

本文实例为大家分享了Python简易版停车管理系统的具体代码,供大家参考,具体内容如下

import time

# 最大停车数
max_car = 100
# 当前停车数,初始为0
cur_car = 0
# 当前停车列表,初始设置为空
car_list = []
time.asctime()

class car(object):
 """定义一个车类包括 车主人名 车牌 开始停放时间"""

 def __init__(self, plate_number, starttime, carname):
  super(car, self).__init__()
  self.plate_number = plate_number
  self.starttime = starttime
  self.carname = carname

 def get_plate_number(self):
  return self.plate_number

 def get_starttime(self):
  return self.starttime

 def get_carname(self):
  return self.carname


if __name__ == '__main__':
 """
 需要实现功能 1.停车 2.出场 3. 查询 .4 退出
 """
 while True:
  print("-------------欢迎来到-停车管理系统---------")
  choice = input("请选则需要的功能 1,停车 2,出场,3.查询 ,4.退出")
  print("********************************************")
  if choice == '1':
   """先判断是否有空车位"""
   if 100 - len(car_list) == 0:
    print("对不起,车位已经没有了,请你重新找吧")
    break
   else:
    print("恭喜你,还有%d车位"%(100-len(car_list)))
   carname = input("停车费为 停车收费5元/小时;,请输入你的名字:")
   plate_number = int(input("请输入你的车牌:"))
   starttime = time.time() # 记录当前时间
   carname = car(plate_number, starttime, carname, ) # 新建对象
   car_list.append(carname) # 将汽车对象存入停车列表
   # print(len(car_list)) 测试用
   print("%s的车牌号为%s的车进场了 当前时间%s" % (carname.get_carname(), plate_number,time.ctime()))
  elif choice == '2':
   # 第一步先查询汽车是否存在,如果不存在建议其联系管理员
   plate_numbers = int(input("请输入你的车牌:"))
   for i in car_list:
    if plate_numbers == i.get_plate_number():
     end_time = time.time()
     times = end_time-i.get_starttime()
     print("你停了%f小时,应该付款%d元" % (times/3600, (times / 3600) * 5))
     car_list.remove(i)
    else:
     print("你的车辆不存在,如果有问题请联系管理员")
     break
  elif choice == '3':
   plate_numbers = int(input("请输入你的车牌"))
   for i in car_list:
    if plate_numbers == i.get_plate_number():
     end_time = time.time()
     times = end_time - i.get_starttime()
     print("你停了%f小时,应该付款%d元" % (times / 3600, (times / 3600) * 5))
    else:
     print("你的车辆不存在,如果有问题请联系管理员")
     break
  else:
   break
 print("感谢您的使用,再见")

更多学习资料请关注专题《管理系统开发》。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python读取并定位excel数据坐标系详解

python读取并定位excel数据坐标系详解

测试数据:坐标数据:testExcelData.xlsx 使用python读取excel文件需要安装xlrd库: xlrd下载后的压缩文件:xlrd-1.2.0.tar.gz 解压后再...

pandas实现将日期转换成timestamp

pandas实现将日期转换成timestamp

OUTLINE 常见的时间字符串与timestamp之间的转换 日期与timestamp之间的转换 常见的时间字符串与timestamp之间的转换 这里说的字符串不是一般意义上的字符串,...

python通过elixir包操作mysql数据库实例代码

python通过elixir包操作mysql数据库实例代码

本文研究的主要是python通过elixir包操作mysql数据库的相关实例,具体如下。 python操作数据库有很多方法,下面介绍elixir来操作数据库。elixir是对sqlalc...

PyCharm 创建指定版本的 Django(超详图解教程)

PyCharm 创建指定版本的 Django(超详图解教程)

最近在学习胡阳老师(the5fire)的《Django企业级开发实战》,想要使用pycharm创建django项目时,在使用virtualenv创建虚拟环境后,在pycharm内,无论如...

分析python动态规划的递归、非递归实现

概要 本文只是简单的介绍动态规划递归、非递归算法实现 案例一 题目一:求数组非相邻最大和 [题目描述] 在一个数组arr中,找出一组不相邻的数字,使得最后的和最大。 [示例输入]...