题目信息
-
题目类型
-
六级
-
题目年份
-
2025
-
题目题型
-
编程题
-
关 键 词
-
管理电话号码
题目题干
36.管理电话号码epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
编写一个使用SQLite管理电话号码的程序,功能有:显示所有电话号码、添加、删除和退出,请补全程序。epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
(本题无需运行通过,写入代码即可)epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
import sqlite3epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
def init db():epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
conn sqlite3.connect('phonebook.db')epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
cursor conn.cursor)epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
cursor. execute("DROP TABLE IF EXISTS contacts")epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
cursor.execute("CREATE TABLE contacts (name TEXT NOT NULL, phone TEXT PRIMARY KEY)"")epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
conn.commit)epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
return connepg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
def show all contacts(conn):epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
cursor conn.cursor)epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
cursor.execute("SELECT name, phone FROM contacts ORDER BY name")epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
contacts cursor.①epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
if not contacts:epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
print("电话簿为空")epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
returnepg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
for name, phone in contacts:epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
print(f"{name}: {phone}")epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
def add contact(conn):epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
name =input("请输入姓名:").strip()epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
phone=input("请输入电话号码:").strip()epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
if not name or not phone:epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
print("错误:姓名和电话都不能为空")epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
returnepg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
try:epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
cursor conn.cursor()epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
cursor.execute("INSERT INTO contacts (name, phone)VALUES (??)",(②③))epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
conn.commit()epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
print(f"成功添加联系人:{name}-{phone}")epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
except sqlite3.IntegrityError:epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
print("错误:该电话号码已存在")epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
def delete_contact(conn):epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
phone=input("请输入要删除的电话号码:").strip()epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
if not phone:epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
print("错误:请输入有效的电话号码")epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
returnepg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
cursor conn.cursor()epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
cursor.execute("SELECT name FROM contacts WHERE phone=?", (phone,))epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
result =cursor.④epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
if not result:epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
print("错误:未找到该电话号码")epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
returnepg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
confirm =input(f"确定要删除{result[0]}({phone})吗?(y/n):").lower()epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
if confirm =='y':epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
cursor.execute("DELETE FROM contacts WHERE phone=?", (phone,))epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
conn.commit()epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
print("联系人已删除")epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
else:epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
print("取消删除")epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
#主程序epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
def main():epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
conn init db()epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
while True:epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
print("----")epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
show all contacts(conn)epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
print("\n请选择操作:")epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
print("1.添加联系人")epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
print("2.删除联系人")epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
print("0.退出程序")epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
choice =input("请输入选项(0-2): ").strip()epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
if choice =="1":epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
add contact(conn)epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
elif choice =="2":epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
delete_contact(conn)epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
elif choice =="0":epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
print("\n感谢使用电话簿管理系统,再见!")epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
conn.close()epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
breakepg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
else:epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
print("无效输入,请重新选择!")epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
if _name_ == "_main_":epg100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
main()
答案解析
相关题目
提示声明
- 免责声明:本站资源均来自网络或者用户投稿,仅供用于学习和交流:如有侵权联系删除!
- 温馨提示:本文属于积分文章,需要充值获得积分或升级VIP会员,也可在会员中心投稿获取。
猜你喜欢
Scratch3.0
全国青少年软件编程等级考试
Python
Scratch图形化一级
Scratch图形化四级
Scratch图形化三级
Scratch图形化二级
电子学会