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的PEAK来适配协议的教程

如果您正尝试去处理元类,或者正受困于 Twisted 中的异步编程,或者正在研究由于使用了多分派而使您精疲力尽的面向对象编程,那么您完全错了!PEAK 将所有这些中的一些要素组合到了一个...

Python 读取 YUV(NV12) 视频文件实例

Python 读取 YUV(NV12) 视频文件实例

一、YUV 简介 YUV:是一种颜色编码方法,常使用在各个视频处理组件中 Y'UV, YCbCr, YPbPr等专有名词都可以称为 YUV,彼此有重叠 Y表示明亮度(单取此通道即可...

详解10个可以快速用Python进行数据分析的小技巧

详解10个可以快速用Python进行数据分析的小技巧

一些小提示和小技巧可能是非常有用的,特别是在编程领域。有时候使用一点点黑客技术,既可以节省时间,还可能挽救“生命”。 一个小小的快捷方式或附加组件有时真是天赐之物,并且可以成为真正的生产...

Python中对象的引用与复制代码示例

可以说Python没有赋值,只有引用。你这样相当于创建了一个引用自身的结构,所以导致了无限循环。为了理解这个问题,有个基本概念需要搞清楚。 Python没有「变量」,我们平时所说的变量其...

python 读取目录下csv文件并绘制曲线v111的方法

实例如下: # -*- coding: utf-8 -*- """ Spyder Editor This temporary script file is located here:...