python模块化程序设计例子

python模块化程序设计例子,第1张

# coding:utf-8
import datetime
# 模块化程序设计:在程序设计时,把一个大的程序功能划分为若干个小的程序模块,每个小的程序模块实现一个确定的功能,
# 并且在这些小程序模块实现的功能之间间裂必要的联系,通过各个小模块之间的协作完成整个大功能实现的方法

# 水果仓库功能
# 这是一个模拟水果仓库的简单管理系统,水果包括名称,重量,日期,
# 程序功能:1,添加水果(用户输入水果名称,重量,日期),2,列出所有水果功能,3,查询水果(根据水果名称),4,删除水果(水果名称)

fruit = [{"name": '苹果', "weight": "52", "time": "2020-02-02"}]
# 通过命令行实现功能,定义菜单函数get_option
def get_option():
  print("1:添加水果信息")
  print("2:显示所有水果信息")
  print("3:查询水果信息")
  print("4:删除水果信息")
  print("5:退出")
  option = input("请根据提示输入要执行的 *** 作:数字1-5\n")
  return option


# 添加水果信息
def add_fruit():
  date_time = datetime.datetime.now()
  # 水果时间
  fruit_time = str(date_time).split('.')[0]
  # 水果名字
  while True:
    fruit_name = input("请输入水果名字:\n")
    if(not fruit_name.isalpha()):
      print("请输入汉字或字母")
      continue
    else:
      break
  # 水果重量
  while True:
    fruit_weight = input("水果重量:\n")
    if(not fruit_weight.isdigit()):
      print("请输入数字")
      continue
    else:
      break
  obj = {"name": fruit_name, "weight": fruit_weight, "time": fruit_time}
  fruit.append(obj)

# 显示所有水果信息
def search_all_fruit():
  if(len(fruit) == 0):
    print("*****************")
    print("***仓库没有水果***")
    print("*****************")
  else:
    for i in fruit:
      print("{},{}千克,{}".format(i['name'], i['weight'], i['time']))

# 查询水果信息
def search_one_fruit():
  f_name = input("请输入水果名称:\n")
  for item in fruit:
    if(item['name'].find(f_name) != -1):
      print("水果名称:{},水果重量:{}kg, 日期:{}".format(item['name'],item['weight'],item['time']))
# 删除水果信息
def delete_fruit():
  d_name = input("请输入要删除的水果名称:\n")
  if len(fruit) == 0:
    print("*****************")
    print("***仓库没有水果***")
    print("*****************")
  else:
    for f in fruit:
      if f['name'] == d_name:
        fruit.remove(f)
        break

# 主程序
def main():
  while True:
    option = get_option()
    if option == '1':
      add_fruit()
    if option == '2':
      search_all_fruit()
    if option == '3':
      search_one_fruit()
    if option == '4':
      delete_fruit()
    if option == '5':
      break

main()

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/916253.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-16
下一篇2022-05-16

发表评论

登录后才能评论

评论列表(0条)

    保存