修改没有用函数的程序

具有独立功能的代码块

源程序

#1.打印功能信息
print("*"*50)
print("\t名片管理系统 V3\t")
print("1:添加一个名片")
print("2:删除一个名片")
print("3:修改一个名片")
print("4:查询一个名片")
print("5:显示所有")
print("6:退出系统")
print("*"*50) #定义一个新的list列表,用来存储名片
card_infors = []
while True:
#2.获取用户的输入
num = int(input("请输入你要的功能:")) #3.根据用户的输入,执行相应的功能
if num == 1:
new_name = input("你要添加的姓名:")
new_age = input("你要添加的年龄:")
new_qq = input("你要添加的qq:")
new_addr = input("你要添加的地址:") #定义1个新的字典dict,用来存储新的名片
new_infor = {}
new_infor["name"] = new_name
new_infor["age"] = new_age
new_infor["qq"] = new_qq
new_infor["addr"] = new_addr #将1个字典dict添加到列表list
card_infors.append(new_infor) #print(card_infors) #for test 测试用的 elif num == 2:
pass
elif num == 3:
pass elif num == 4:
find_name = input("请输入你要查询的名字:")
flag = 0 #默认 没有查到此人
for tmp in card_infors:
if find_name in tmp["name"]:
print("%s\t%s\t%s\t%s"%(tmp["name"],tmp["age"],tmp["qq"],tmp["addr"]))
flag = 1 #表示查到此人了
break
#判断是否找到了
if flag == 0:
print("查无此人") elif num == 5:
print("姓名\t年龄\tqq号\t地址")
for tmp in card_infors:
print("%s\t%s\t%s\t%s"%(tmp["name"],tmp["age"],tmp["qq"],tmp["addr"]))
elif num == 6:
break
else:
print("你输入的有误,请重新输入") print("")

1.版本1:打印菜单功能

刚开始写程序一刹那就用函数

改一点,实验一下

def print_menu():
print("*"*50)
print("\t名片管理系统 V3\t")
print("1:添加一个名片")
print("2:删除一个名片")
print("3:修改一个名片")
print("4:查询一个名片")
print("5:显示所有")
print("6:退出系统")
print("*"*50) # 1.打印功能信息
print_menu() #定义一个新的list列表,用来存储名片
card_infors = []
while True:
#2.获取用户的输入
num = int(input("请输入你要的功能:")) #3.根据用户的输入,执行相应的功能
if num == 1:
new_name = input("你要添加的姓名:")
new_age = input("你要添加的年龄:")
new_qq = input("你要添加的qq:")
new_addr = input("你要添加的地址:") #定义1个新的字典dict,用来存储新的名片
new_infor = {}
new_infor["name"] = new_name
new_infor["age"] = new_age
new_infor["qq"] = new_qq
new_infor["addr"] = new_addr #将1个字典dict添加到列表list
card_infors.append(new_infor) #print(card_infors) #for test 测试用的 elif num == 2:
pass
elif num == 3:
pass elif num == 4:
find_name = input("请输入你要查询的名字:")
flag = 0 #默认 没有查到此人
for tmp in card_infors:
if find_name in tmp["name"]:
print("%s\t%s\t%s\t%s"%(tmp["name"],tmp["age"],tmp["qq"],tmp["addr"]))
flag = 1 #表示查到此人了
break
#判断是否找到了
if flag == 0:
print("查无此人") elif num == 5:
print("姓名\t年龄\tqq号\t地址")
for tmp in card_infors:
print("%s\t%s\t%s\t%s"%(tmp["name"],tmp["age"],tmp["qq"],tmp["addr"]))
elif num == 6:
break
else:
print("你输入的有误,请重新输入") print("")

2.版本2:

新定义的函数:需不需要参数 ,需要几个

        需不需要返回值,需要返回什么样的值

#定义一个新的list列表,用来存储名片
card_infors = [] def print_menu():
print("*"*50)
print("\t名片管理系统 V3\t")
print("1:添加一个名片")
print("2:删除一个名片")
print("3:修改一个名片")
print("4:查询一个名片")
print("5:显示所有")
print("6:退出系统")
print("*"*50) def add_new_card_infor():
new_name = input("你要添加的姓名:")
new_age = input("你要添加的年龄:")
new_qq = input("你要添加的qq:")
new_addr = input("你要添加的地址:") #定义1个新的字典dict,用来存储新的名片
new_infor = {}
new_infor["name"] = new_name
new_infor["age"] = new_age
new_infor["qq"] = new_qq
new_infor["addr"] = new_addr #将1个字典dict添加到列表list
global card_infors
card_infors.append(new_infor)
#print(card_infors) #for test 测试用的 # 1.打印功能信息
print_menu() while True:
#2.获取用户的输入
num = int(input("请输入你要的功能:")) #3.根据用户的输入,执行相应的功能
if num == 1:
add_new_card_infor() elif num == 2:
pass
elif num == 3:
pass elif num == 4:
find_name = input("请输入你要查询的名字:")
flag = 0 #默认 没有查到此人
for tmp in card_infors:
if find_name in tmp["name"]:
print("%s\t%s\t%s\t%s"%(tmp["name"],tmp["age"],tmp["qq"],tmp["addr"]))
flag = 1 #表示查到此人了
break
#判断是否找到了
if flag == 0:
print("查无此人") elif num == 5:
print("姓名\t年龄\tqq号\t地址")
for tmp in card_infors:
print("%s\t%s\t%s\t%s"%(tmp["name"],tmp["age"],tmp["qq"],tmp["addr"]))
elif num == 6:
break
else:
print("你输入的有误,请重新输入") print("")

3.函数文档说明

  """函数说明文档,可以写上函数的功能,以防止后面遗忘"""

   

4.版本3:添加函数说明 文档

#定义一个新的list列表,用来存储名片
card_infors = [] def print_menu():
"""完成打印功能"""
print("*"*50)
print("\t名片管理系统 V3\t")
print("1:添加一个名片")
print("2:删除一个名片")
print("3:修改一个名片")
print("4:查询一个名片")
print("5:显示所有")
print("6:退出系统")
print("*"*50) def add_new_card_infor():
"""完成添加新名片功能"""
new_name = input("你要添加的姓名:")
new_age = input("你要添加的年龄:")
new_qq = input("你要添加的qq:")
new_addr = input("你要添加的地址:") #定义1个新的字典dict,用来存储新的名片
new_infor = {}
new_infor["name"] = new_name
new_infor["age"] = new_age
new_infor["qq"] = new_qq
new_infor["addr"] = new_addr #将1个字典dict添加到列表list
global card_infors
card_infors.append(new_infor)
#print(card_infors) #for test 测试用的 def find_card_infor():
"""完成查询1个名片的功能"""
global card_infors #全局变量一般声明在开头 find_name = input("请输入你要查询的名字:")
flag = 0 #默认 没有查到此人
for tmp in card_infors:
if find_name in tmp["name"]:
print("%s\t%s\t%s\t%s"%(tmp["name"],tmp["age"],tmp["qq"],tmp["addr"]))
flag = 1 #表示查到此人了
break
#判断是否找到了
if flag == 0:
print("查无此人") def show_card_infor():
"""完成显示名片"""
global card_infors #全局变量一般声明在开头 print("姓名\t年龄\tqq号\t地址")
for tmp in card_infors:
print("%s\t%s\t%s\t%s"%(tmp["name"],tmp["age"],tmp["qq"],tmp["addr"])) # 1.打印功能信息
print_menu() while True:
#2.获取用户的输入
num = int(input("请输入你要的功能:")) #3.根据用户的输入,执行相应的功能
if num == 1:
add_new_card_infor() elif num == 2:
pass
elif num == 3:
pass
elif num == 4:
find_card_infor() elif num == 5:
show_card_infor() elif num == 6:
break
else:
print("你输入的有误,请重新输入") print("")

5.版本4.main主函数

#定义一个新的list列表,用来存储名片
card_infors = [] def print_menu():
"""完成打印功能"""
print("*"*50)
print("\t名片管理系统 V3\t")
print("1:添加一个名片")
print("2:删除一个名片")
print("3:修改一个名片")
print("4:查询一个名片")
print("5:显示所有")
print("6:退出系统")
print("*"*50) def add_new_card_infor():
"""完成添加新名片功能"""
new_name = input("你要添加的姓名:")
new_age = input("你要添加的年龄:")
new_qq = input("你要添加的qq:")
new_addr = input("你要添加的地址:") #定义1个新的字典dict,用来存储新的名片
new_infor = {}
new_infor["name"] = new_name
new_infor["age"] = new_age
new_infor["qq"] = new_qq
new_infor["addr"] = new_addr #将1个字典dict添加到列表list
global card_infors
card_infors.append(new_infor)
#print(card_infors) #for test 测试用的 def find_card_infor():
"""完成查询1个名片的功能"""
global card_infors
find_name = input("请输入你要查询的名字:")
flag = 0 #默认 没有查到此人
for tmp in card_infors:
if find_name in tmp["name"]:
print("%s\t%s\t%s\t%s"%(tmp["name"],tmp["age"],tmp["qq"],tmp["addr"]))
flag = 1 #表示查到此人了
break
#判断是否找到了
if flag == 0:
print("查无此人") def show_card_infor():
"""完成显示名片"""
global card_infors
print("姓名\t年龄\tqq号\t地址")
for tmp in card_infors:
print("%s\t%s\t%s\t%s"%(tmp["name"],tmp["age"],tmp["qq"],tmp["addr"])) def main():
'''完成对整个程序的控制'''
# 1.打印功能信息
print_menu() while True:
#2.获取用户的输入
num = int(input("请输入你要的功能:")) #3.根据用户的输入,执行相应的功能
if num == 1:
add_new_card_infor() elif num == 2:
pass
elif num == 3:
pass
elif num == 4:
find_card_infor() elif num == 5:
show_card_infor() elif num == 6:
break
else:
print("你输入的有误,请重新输入") print("") #调用主函数
main()

6.主要流程

    

7.列表和字典可以当做全局变量来用

可以不用global ,但是建议用global

nums = [11,22,33]
infor = {"name":"alex"} def test():
#for num in nums:
# print(num)
nums.append(44)
infor["age"] = 18 def test2():
print(nums)
print(infor) test()
test2()

    

day 4 名片管理系统 -函数版的更多相关文章

  1. day 5 名片管理系统-文件版

    1.添加__name__ == '__main__' if __name__ == "__main__": #添加__name__变量 #调用主函数 main() 2.添加6功能, ...

  2. python案例:实现一个函数版的名片管理系统

    本案例使用了自定义函数以及对字符串的常见操作.判断语句和循环语句等知识. 要求 必须使用自定义函数,完成对程序的模块化. 名片信息至少包括:姓名.电话.住址. 必须完成的功能:增.删.改.查.退出. ...

  3. python3实现名片管理系统(文件版)

    def menu(): #首先定义功能列表函数menu() print(" 名片管理系统 V1.0 ") print("1:增加新用户") print(&quo ...

  4. 一、Python系列——函数的应用之名片管理系统

    card_list = [] def main_desk(): print('*'*50) print('欢迎使用[名片管理系统]V1.0') print('1.新建名片') print('2.显示全 ...

  5. 名片管理系统v1.1(main)

    # version: 1.1# author: Mark import cords_tools while True: # 显示界面    cords_tools.show_cords() cords ...

  6. Python基础综合运用——搭建名片管理系统

    综合应用 —— 名片管理系统 目标 综合应用已经学习过的知识点: 变量 流程控制 函数 模块 开发 名片管理系统 系统需求 程序启动,显示名片管理系统欢迎界面,并显示功能菜单 ************ ...

  7. python基础提高演练(名片管理系统的开发)

    综合应用 —— 名片管理系统 目标 综合应用已经学习过的知识点: 变量 流程控制 函数 模块 开发 名片管理系统 系统需求 1. 程序启动,显示名片管理系统欢迎界面,并显示功能菜单 ********* ...

  8. python名片管理系统V2

    主程序: #! /usr/bin env python3 # -*- coding: utf-8 -*- # 项目三: # 1.要求:编写一个名片管理系统,功能如下: # 用户输入相对应的指令,实现对 ...

  9. python名片管理系统

    1.代码: (1)主程序 #!/usr/bin/env python # -*- coding: UTF-8 -*- import cards_tools # 无限循环,由用户主动决定什么时候退出循环 ...

随机推荐

  1. Spring4 SpringMVC Hibernate4 Freemaker 整合样例

    更正改动(2014-05-30 13:47:22):有的IDE中web.xml会报这个错: cvc-complex-type.2.4.a: Invalid content was found star ...

  2. js事件的机制

    1.html事件处理程序 <button id="btn1" onclick="alert(1);">按钮1</button> 2.do ...

  3. 4、Android-数据存储方案(文件存储/SharedPreferences)

    简介: 任何一个应用程序都需要和数据进行交互 对于软件来说微博.QQ等都需要关系的是数据 没有数据的应用程序是一个没有灵魂的软件 而且还没有实际的用途 可以认为是单机 4.1.持久化技术的简介 数据持 ...

  4. ethereumjs/ethereumjs-block-2-api

    https://github.com/ethereumjs/ethereumjs-block/blob/master/docs/index.md 详细的调用代码可见本博客的ethereumjs/eth ...

  5. 验证码帮助类【CaptchaHelper 】

    GDI+:Graphics Device Interface Plus也就是图形设备接口,提供了各种丰富的图形图像处理功能;在C#.NET中,使用GDI+处理二维(2D)的图形和图像,使用Direct ...

  6. PAT——1071. 小赌怡情

    常言道“小赌怡情”.这是一个很简单的小游戏:首先由计算机给出第一个整数:然后玩家下注赌第二个整数将会比第一个数大还是小:玩家下注t个筹码后,计算机给出第二个数.若玩家猜对了,则系统奖励玩家t个筹码:否 ...

  7. PAT——1041. 考试座位号

    每个PAT考生在参加考试时都会被分配两个座位号,一个是试机座位,一个是考试座位.正常情况下,考生在入场时先得到试机座位号码,入座进入试机状态后,系统会显示该考生的考试座位号码,考试时考生需要换到考试座 ...

  8. keepalived 的进程/usr/sbin/keepalived -D 只有2个

    操作系统:openSUSE 11.3 (x86_64) /usr/sbin/keepalived -D  只有2条 日志:ls  /var/log/messages* -lrth Can't init ...

  9. 【2016 ICPC亚洲区域赛北京站 E】What a Ridiculous Election(BFS预处理)

    Description In country Light Tower, a presidential election is going on. There are two candidates,   ...

  10. 洛谷P4602 [CTSC2018]混合果汁(主席树)

    题目描述 小 R 热衷于做黑暗料理,尤其是混合果汁. 商店里有 nn 种果汁,编号为 0,1,\cdots,n-10,1,⋯,n−1 . ii 号果汁的美味度是 d_idi​ ,每升价格为 p_ipi ...