概述
名片管理器是一款生活实用类软件,用来协助管理手机中的所有名片。为了帮助大家在实际应用中学会选择使用四种类型的函数,接下来我们开发一个名片管理器。这个案例要求使用函数完成各种功能,并且根据键盘的输入来选择对应的函数完成这些功能。
函数的四种类型函数无参数,无返回值。
函数无参数,有返回值。
函数有参数,无返回值。
函数有参数,有返回值。
下面是名片管理器的菜单系统效果图
名片管理器菜单中共有五种功能,通过接收键盘输入的序号,相应用户选择的功能。一旦用户输入了"5",就会退出系统。
具体实现步骤如下:
1.输出名片管理器的菜单
定义输出菜单功能的函数。考虑到该函数只用来输出信息,并且输出的内容是固定不变的,所以定义一个无参数无返回值的函数cardMenu。
def cardMenu():
# 名片管理器菜单
print("-" * 30)
print(" 名片管理系统")
print("1.添加名片")
print("2.删除名片")
print("3.修改名片")
print("4.获取所有名片信息")
print("5.退出系统")
print("-" * 30)
使用cardMenu()调用函数,控制台便输出了菜单信息。
2.获取用户输入的信息
菜单显示以后,用户根据提示输入要执行的序号。通过input()函数从键盘接收用户的选择,并把选择的序号进行返回,所以定义一个无参数有返回值的函数getChoice()。
#获取用户输入的信息
def getChoice():
keyboardInput = input("请输入选择的序号")
keyboardInput = int(keyboardInput)
return(keyboardInput)
注意:input函数获取的数据,即使是数字,也是以字符串的方式进行保存的,所以在第4行里我们要转换成int类型。
打印菜单之后,调用getChoice()函数来获取用户输入的信息。
#等待用户选择
key = getChoice()
执行效果:
3.通过获取序号,执行不同的功能
获取序号以后,根据序号执行相应的操作。使用if语句根据用户选择的序号完成相应的功能。
if key == 1:
pass
elif key == 2:
pass
elif key == 3:
pass
elif key == 4:
pass
elif key == 5:
pass
else:
print("输入有误,请重新输入。")
接下来,在每个条件下来处理该序号对应的功能。
3.1添加名片
想要保存所有名片的信息,需要用到列表。先定义一个名片列表,nameCard = ["喜小乐","石敢当","大头鹅","扬州蟹"]。用户选择了序号1,此时应该提示用户输入姓名,然后添加到上述列表中,因此我们定义一个无参数无返回值的函数。
#添加名片
def addCard():
newCard = input("请输入姓名:")
nameCard.append(newCard)
接着在用户选择序号1的时候,调用上述方法实现添加名片的功能。
if key == 1:
addCard()
elif key == 2:
...省略...
运行结果:
3.2删除名片
用户选择了序号2,此时应该提示用户输入姓名,然后删除列表中相对应的内容,因此我们定义一个无参数无返回值的函数。
#删除名片
def removeCard():
delCard = input("请输入姓名:")
nameCard.remove(delCard)
接着在用户选择序号2的时候,调用上述方法实现删除名片的功能。
elif key == 2:
removeCard()
运行结果:
3.3修改名片
用户选择了序号3,此时应该提示用户输入原名和修改后的姓名,然后上述列表中相对应的内容,因此我们定义一个无参数无返回值的函数。
#修改名片
def recomposeCard():
name = input("请输入原名:")
indexVariable = nameCard.index(name)
newName = input("请输入修改后的名字:")
nameCard[indexVariable] = newName
接着在用户选择序号3的时候,调用上述方法实现修改名片的功能。
elif key == 3:
recomposeCard()
运行结果:
3.4获取所有名片信息
用户选择了序号4,此时应该从列表中获取所有的姓名信息,按照固定的格式进行打印,因此我们定义一个有参数无返回值的函数。
#查看所有名片的信息
def printCard(List):
print("=" * 30)
for card in List:
print(card)
print("=" * 30)
接着在用户选择序号3的时候,调用上述方法实现查看所有名片的功能。
elif key == 4:
printCard(nameCard)
运行结果:
3.5退出系统
#退出系统
print("感谢您的使用,再见。")
exit()
运行结果:
4.全部代码
def cardMenu():
#名片管理器菜单
print("-" * 30)
print(" 名片管理系统")
print("1.添加名片")
print("2.删除名片")
print("3.修改名片")
print("4.获取所有名片信息")
print("5.退出系统")
print("-" * 30)
def getChoice():
#获取用户输入的信息
keyboardInput = input("请输入选择的序号")
keyboardInput = int(keyboardInput)
return(keyboardInput)
def addCard():
#添加名片
newCard = input("请输入姓名:")
nameCard.append(newCard)
def removeCard():
#删除名片
delCard = input("请输入姓名:")
nameCard.remove(delCard)
def recomposeCard():
#修改名片
name = input("请输入原名:")
indexVariable = nameCard.index(name)
newName = input("请输入修改后的名字:")
nameCard[indexVariable] = newName
def printCard(List):
#查看所有名片信息
print("=" * 30)
for card in List:
print(card)
print("=" * 30)
#新建一个保存名片信息的列表
nameCard = ["喜小乐","石敢当","大头鹅","扬州蟹"]
cardMenu()
#等待用户选择
time = 1
while time < 2:
key = getChoice()
if key == 1:
addCard()
elif key == 2:
removeCard()
elif key == 3:
recomposeCard()
elif key == 4:
printCard(nameCard)
elif key == 5:
print("感谢您的使用,再见。")
#退出程序
exit()
else:
print("输入有误,请重新输入。")
Python其实没有那么难。
最后
以上就是诚心盼望为你收集整理的python函数做菜单_学不会的Python函数——函数小案例(名片管理器)的全部内容,希望文章能够帮你解决python函数做菜单_学不会的Python函数——函数小案例(名片管理器)所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复