Python简易版停车管理系统

yipeiwu_com6年前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 中的 descriptor

定义 通常,一个 descriptor 是具有“绑定行为”的对象属性。所绑定行为可通过 descriptor 协议被自定义的 __get__() , __set__() 和 __dele...

Python3.6安装及引入Requests库的实现方法

Python3.6安装及引入Requests库的实现方法

本博客可能没有那么规范,环境之类的配置。只是让你直接开始编程写python。 至于各种配置网络上有多种方法。 本文仅代表我的观点的一种方法。 电脑环境:win10 64位 第一步:下载p...

Python 常用 PEP8 编码规范详解

Python 常用 PEP8 编码规范 代码布局 缩进 每级缩进用4个空格。 括号中使用垂直隐式缩进或使用悬挂缩进。 EXAMPLE: # (垂直隐式缩进)对准左括号 f...

Python3.x和Python2.x的区别介绍

1.性能Py3.0运行 pystone benchmark的速度比Py2.5慢30%。Guido认为Py3.0有极大的优化空间,在字符串和整形操作上可以取得很好的优化结果。Py3.1性能...

基于pytorch的保存和加载模型参数的方法

当我们花费大量的精力训练完网络,下次预测数据时不想再(有时也不必再)训练一次时,这时候torch.save(),torch.load()就要登场了。 保存和加载模型参数有两种方式: 方式...