为了账号安全,请及时绑定邮箱和手机立即绑定

使用用户输入显示列表中的特定信息 - Python 3

使用用户输入显示列表中的特定信息 - Python 3

慕慕森 2021-07-22 21:01:51
在我陈述我的问题之前,我想先说我是 Python 编程的初学者。我的第一堂编程课已经过了一半。话虽如此,我还研究并使用了搜索引擎来查找有关我正在研究的主题的信息,但我没有找到任何对我的问题有帮助或足够具体的信息。我浏览了 Stack Overflow,包括浏览类似的问题对话。我希望在我得到任何有用的信息之前,这不会被否决或标记为重复。我正在创建一个联系人管理器程序,该程序使用存储在 CSV 文件中的联系人姓名、电子邮件地址和电话号码列表。我的程序应该允许用户显示所有联系人姓名的列表、添加/删除联系人以及查看特定的联系人信息。我对最终要求有问题。程序中的其他所有内容都可以正常工作并在控制台中正常显示。整个程序的代码如下;#!/user/bin/env python3# Contacts Manager Program#Shows title of program at start.print("The Contact Manager Program")print()#Imports CSV Moduleimport csv#Defines global constant for the file.FILENAME = "contacts.csv"#Displays menu options for user, called from main function.def display_menu():    print("COMMAND MENU")    print("list - Display all contacts")    print("view - View a contact")    print("add - Add a contact")    print("del - Delete a contact")    print("exit - Exit program")    print()#Defines write funtion for CSV file.def write_contacts(contacts):    with open(FILENAME, "w", newline="") as file:        writer = csv.writer(file)        writer.writerows(contacts)#Defines read function for CSV file.def read_contacts():    contacts = []    with open(FILENAME, newline="") as file:        reader = csv.reader(file)        for row in reader:            contacts.append(row)    return contacts#Lists the contacts in the list with the user inputs the "list" command.    def list_contacts(contacts):    for i in range(len(contacts)):        contact = contacts[i]        print(str(i+1) + ". " + contact[0])    print()#List a specific contacts information when the user inputs the "view" command.def view_contact(number):#Adds contact to the end of the list when user inputs the "add" command.def add_contact(contacts):    name = input("Name: ")    email = input("Email: ")    phone = input("Phone: ")    contact = []    contact.append(name)    contact.append(email)    contact.append(phone)    contacts.append(contact)    write_contacts(contacts)    print(name + " was added.\n")我需要 view_contact 函数从用户那里获取一个数字作为输入,然后打印与 CSV 文件中的行号相关的相应联系信息。
查看完整描述

1 回答

?
心有法竹

TA贡献1866条经验 获得超5个赞

看起来您在 .csv 文件中以列表的形式存储联系人。用于read_contacts从该 csv 文件中读取所有联系人,然后获取由 number 参数指定的联系人。而已。


def view_contact(number):

    contacts = read_contacts()

    specified_contact = contacts[number]

    print("Name: ", specified_contact[0])

    print("Email: ", specified_contact[1])

    print("Phone: ", specified_contact[2])


查看完整回答
反对 回复 2021-07-27
  • 1 回答
  • 0 关注
  • 178 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信