relax,9.Python手刺办理体系,超轻粘土

频道:小编推荐 日期: 浏览:400

方针

归纳运用现已学习过的知识点:

  • 变量
  • 流程操控
  • 函数
  • 模块

开发 手刺处理体系

体系需求

  1. 程序发动,显现手刺处理体系欢迎界面,并显新益华医疗事务渠道示功用菜单
**********************relax,9.Python手刺处理体系,超轻粘土****************************
欢迎运用【手刺处理体系】V1.0
1\. 新建手刺
2\. 显现悉数
3\. 查询手刺
0\. 退出体系
**************************************************
  1. 用户用数字挑选不同的功用
  2. 依据功用挑选,履行不同的功用
  3. 用户手刺需求记载用户的 名字电话QQ邮件
  4. 假如查询到指定的手刺,用户能够挑选 修正 或许 删去 手刺

过程

  1. 结构建立
  2. 新增手刺
  3. 显现一切手刺
  4. 查询手刺
  5. 查询成功后修正、删去手刺
  6. 让 Python 程序能够直接运转

01. 结构建立

方针

  1. 建立relax,9.Python手刺处理体系,超轻粘土手刺处理体系 结构结构预备文件,确认文件名,确保能够 在需求的方位 编写代码
  2. 编写 主运转循环,完结根本的 用户输入和判别

1.1 文件预备

  • 新建 cards_main.py 保存 主程序功用代码程序的进口
  • 每一次发动手刺处理体系都经过 main 这个文件发动
  • 新建 cards_tools.py 保存 一切手刺功用函数将对手刺的 新增查询修正删去 等功用封装在不同的函数中

1.2 编写主运转循环

  • 在 cards_main 中添加一个 无限循环

while True:
# TODO(小明) 显现体系菜单
action = input("请挑选操作功用:")
print("您挑选的操作是:%s" % action)
# 依据用户输入决议后续的操作
if action in ["1", "2", "3"]:
pass
elif action == "0":
print("欢迎再次运用【手刺处理体系】")
break
else:
print("输入过错,请从头输入")

字符串判别

if action in ["1", "2", "3"]:
if action == "1" or action == "2" or action == "3":
  1. 运用 in 针对 列表 判别吃人宴,防止运用 or 拼接杂乱的逻辑条件
  2. 没有运用 int 转化用户输入,能够防止 一旦用户输入的不是数字,导致程序运转犯错

pass

  • pass 便是一个空句子,不做任何事情,一般用做占位句子
  • 是为了坚持程序结构的完整性

无限循环

  • 在开发软件时,假如 不期望程序履行后 当即退出
  • 能够在程序中添加一个 无限循环
  • 由用户来决议 退出程序的机遇

TODO 注释

  • 在 # 后跟上 T陶同ODO,用于符号需求去做的作业

# TODO(作者/邮件) relax,9.Python手刺处理体系,超轻粘土显现体系菜单

1.3 在 cards_tools 中添加四个新函数

def show_menu():

"""显现菜单

""青纱帐边的女性"

pass

def new_card():

"""新建手刺

"""

print("-" * 50)

print("功用:新建手刺")

def show_all():

"""显现悉数

"""

print("-" * 50)

print("功用:显现悉数")

def search_45k影院card():

"""查找手刺

"""

print("-" * 50)

print("功用:查找手刺")

1.4 导入模块春色满园之农女王妃

  • 在 cards_main.py 中运用 import 导入 cards_tools 模块
import car艳修ds_tools
  • 修正 while 循环的代码如下:

import cards_tools

while True:

cards_tools.show_menu()

action = input("请挑选操作功用:")

print("您挑选的操作是:%s" % action)

# 依据用户输入决议后续的操作

if action in ["1", "2", "3"]:

if action == "1":

cards_tools.new_card()

elif action == "2":

cards_tools.show_all()

elif action == "3":

cards_tools.search_card()

elif action == "0":

print("欢迎再次运用【手刺处理体系】")

break

else:

print("输入过错,请从头输入:")

至此:cards_main 中的一切代码悉数开发结束!

1.5 完结 show_menu 函数

def show_menu():
"""显现菜单
"""
print("*" * 50)
print("欢迎运用【菜单处理体系】V1.0")
print("")
print("1\. 新建手刺")
print("2\. 显现悉数")
print("3\. 查询手刺")
print("")
print("0\. 退出体系")
print("*" * 50)

02. 保存手刺数据的结构

程序便是用来处理数据的,而变量便是用来存储数据的

  • 运用 字典 记载 每一张手刺 的详细信息
  • 运用 列表 一致记载一切的 手刺字典

image

界说手刺列表变量

  • 在 cards_tools 文件的顶部添加一个 列表变量

# 一切手刺记载的列表

card_list = []

留意

  1. 一切手刺相关操作,都需求运用这个列表,所以应该 界说在程序的顶部
  2. 程序刚运转时,没有数据,所relax,9.Python手刺处理体系,超轻粘土所以 空列表

03. 新增手刺

3.1 功用分析

  1. 提示用户顺次输入手刺信息
  2. 将手刺信息保存到一个字典
  3. 将字典添加到手刺列表
  4. 提示手刺添加完结

3.2 完结 高美美new_card 办法

  • 依据过程完结代码

def new_card():

"""新建手刺

"""

print("-" * 50)

print("吕素鹏功用:新建手刺")

# 1\. 提示用户输入手刺信息

name = input("请输入名字:")

phone = input("请输入电话:")

qq = input("请输入 QQ 号码:")

email = input("请输入邮箱:")

# 2\. 将用户信息保存到一个字典

card_dict = {"name": name,

"pho倪克俭ne": phone,

"qq": qq,

"email": email}

# 3\. 将用户字典添加ag电子到手刺列表

card_l女生奶头ist.append(card_dict)

print(card_list)

# 4\. 提示添加成功信息

print("成功添加 %s 的手刺" % card_dict["name"])

技巧:在 PyCharm 中,能够运用 SHIFT + F6 一致修正变量名

04. 显现一切手刺

4.1 功用分析

  • 循环遍历手刺列表,次序显现每一个字典的信息

4.2 根底代码完结

def show_all():
"""显现悉数
"""
print("-" * 50)
print("功用:显现悉数")
for card_dict in card_list:
print(card_dict)
  • 显现作用欠好!

4.3 添加标题和运用 \t 显现

def show_all():

"""显现悉数

"""

print("-" * 50)

print("功用:显现悉数")

# 打印表头

for name in ["名字", "电话", "QQ", "邮箱"]:

print(name, end="\t\t")

print("")

# 打印分隔线

print("=" * 50)

for card_dict in card_list:

print("%s\t\t%s\t\t%s\t\t%s" % (card_浴血金三角dict["name"],

card_dict["phone"],

card_dict["qq"]三国之吞天武神,

card_dict["email"]))

4.4 添加没有手刺记载判别

def show_all():

"""显现悉数

"""

print("-" * 50)

print("功用:显现悉数")

# 1\. 判别是否有手刺记载

if len(card_list) == 0:

print("提示:没有任何手刺记载")

rerelax,9.Python手刺处理体系,超轻粘土turn

留意

  • 在函数中运用 return 表明回来
  • 假如在 return 后没有跟钟沛枝任何内容,仅仅表明该函数履行到此就不再履行后续的代码

05. 查询手刺

5.1 功用分析

  1. 提示用户要查找的名字
  2. 依据用户输入的名字遍历列表
  3. 查找到指定的手刺后,再履行后续的操作

5.2 代码完结

  • 查询功用完结

def search_card():

"""查找手刺

"""

print("-" * 50)

print("功用:查找手刺")

# 1\. 提示要查找的名字

find_name = input("请输入要查找的名字:")

# 2\. 遍历字典

for card_dict in card_list:

if card_dict["name"] == find_name:

print("名字\t\t\t电话\t\t\tQQ\t\t\t邮箱")

print("-" * 40)

print("%s\t\t\t%s\t\t\t%s\t\t\t%s" % (

card_dict[纪炎简谱视唱"name"],

card_dict["phone"],

card_dict["qq"],

card_dict["email"]))

print("-" * 40)

# TODO(小明) 针对找到的字典进行后续操作:修正/删去

break

else:

print("没有找到 %s" % find_name)

  • 添加手刺操作函鎏英奇鸢数:修正/删去/回来主菜单

def deal_card(find_dict):

"""操作查找到的手刺字典

:param find_dict:找到的手刺字典

"""

print(find_dict)

action_str = input("请挑选要履行的操作 "

"[1] 修正 [2] 删去 [0] 回来上级菜单")

if action == "1":

print("修正")

elif action == "2":

print("删去")

06. 修正和佟悦名新删去

6.1 查询成功后删去手刺

  • 因为找到的字典记载现已在列表中保存
  • 要删去手刺记载,只需求把列表中对应的字典删去即可

elif action == "2":

card_list.remove(find_dict)

print("删去relax,9.Python手刺处理体系,超轻粘土成功")

6.2 修正手刺

  • 因为找到的字典记载现已在列表中保存
  • 要修正手刺记载,只需求把列表中对应的字典中每一个键值对的数据修正即可

if action == "1":

find_dict["name"] = input("请输入名字:")

find_dict["phone"] =孤寂山村 input("请输入电话:")

find_dict["qq"] = input("请输入QQ:")

find_dict["email"] = input("请输入邮件:")

print("%s 的手刺修正成功" % find_dict["name"])

修正手刺细化

  • 假如用户在运用时,某些手刺内容并不想修正,应该如何做呢?—— 已然体系供给的 input 函数不能满意需求,那么就新界说一个函数 input_card_info 对体系的 input 函数进行扩展
def input_card_info(dict_value, tip_message):
"""输入手刺信息
:param dict_value: 字典原有值
:param tip_message: 输入提示信息
:return: 假如输入,回来输入内容,不然回来字典原有值
"""
# 1\. 提示用户输入内容
result_str = input(tip_message)
# 2\. 针对用户的输入进行判别,假如用户输入了内容,直接回来成果
if len(result_str) > 0:
return result_str
# 3\. 假如用户没有输入内容,回来 `字典华夏有的值`
else:
return dict_value

最终,想学习Python的小伙伴们!

请重视+私信回复:“学习”就能够拿到一份我为我们预备的Python学习材料relax,9.Python手刺处理体系,超轻粘土!

pytyhon学习材料

python学习材料