Python écrit le carnet d'adresses, prend en charge les requêtes floues et utilise le stockage de base de données

Nightmare 762459510 2021-11-25 18:31:01
python crit le carnet adresses

1.Exigences

Carnet d'adresses de stockage de base de données,Par nom requis/Demande de numéro de téléphone,Les critères de requête n'ont qu'une seule entrée,Identification automatique du nom ou du numéro entré,Autoriser les requêtes floues.

2.Fonction de réalisation

Peut être actionné par des commandes d'entrée.

(1)Entrez d'abord“add”,Vous pouvez ajouter des coordonnées au carnet d'adresses.

sql1 = ‘insert into TA(ID,NAME,AGE,ADDRESS,TELENUMBER)’

sql1 += ‘values("%d","%s","%d","%s","%s");’ % (ID,name, age, address, telenumber)

conn.execute(sql1)

conn.commit() # Soumettre,Sinon, impossible d'enregistrer

(2)Entrée“delete”,Vous pouvez supprimer les coordonnées spécifiées.

Saisissez le nom supprimer:

cursor = c.execute( “SELECT name from TA where name = ‘%s’;” %i)

Entrez le numéro de téléphone supprimer:

cursor = c.execute( “SELECT name from TA where telenumber= ‘%s’;” % i)

(3)Entrée“search”,Vous pouvez entrer un contact ou un numéro de téléphone,Demander les coordonnées, Les requêtes floues et précises sont réalisées ici .Enfin,Si votre temps n'est pas très stressant,Et je veux être rapidepythonAmélioration,Le plus important, c'est de ne pas avoir peur de souffrir.,Je vous suggère d'utiliser Wechat:762459510 ,C'est vraiment bien.,Beaucoup de gens progressent rapidement,J'ai besoin que tu n'aies pas peur de souffrir.!Vous pouvez l'ajouter et le voir.~

Saisissez la requête de nom :

sql1 = “SELECT id,name,age, address, telenumber from TA where telenumber like '%” + i + “%’”

cursor = c.execute(sql1)

Entrez le numéro de téléphone pour demander :

sql1= “SELECT id,name,age, address, telenumber from TA where name like '%” +i+ “%’”

cursor = c.execute(sql1)

(4)Entrée“searchall”, Demander toutes les coordonnées .

cursor = c.execute( “SELECT id, name, age, address, telenumber from TA” )

3.Base de donnéessqlite3

PythonLivré avec une base de données relationnelle légèresqlite.Cette base de données utiliseSQLLangues.sqlite En tant que base de données d'arrière - plan ,Ça ira.Python Création d & apos; un site Web , Ou créer des outils avec des exigences de stockage de données .sqlLite .Il est également largement utilisé dans d'autres domaines ,Par exemple,HTML5Et mobile.PythonDans la Bibliothèque standardsqlite3 Fournir une interface pour cette base de données . C'est pourquoi cette fois sqlite3 La base de données stocke les coordonnées du carnet d'adresses .

Code source:

import sqlite3
import re

Ouvrir la base de données locale pour stocker les informations de l'utilisateur

conn = sqlite3.connect(‘mysql_telephone_book.db’)
c = conn.cursor()
Créer une table sous cette base de données , Ce code qui crée la table doit être commenté après la première exécution , Sinon, exécuter à nouveau le programme vous demandera toujours : Le tableau existe déjà

‘’‘c.execute(“CREATE TABLE TA
(ID INT PRIMARY KEY NOT NULL,
NAME TEXT NOT NULL,
AGE INT NOT NULL,
ADDRESS CHAR(50),
TELENUMBER TEXT);”)’’’
conn.commit()#Commit Current transaction
Ajouter des informations sur l'utilisateur

def insert():
global conn
c = conn.cursor()
ID=int(input(“Veuillez entreridNo.:”))
name=input(“Veuillez saisir un nom:”)
age=int(input(“Veuillez entrer l'âge:”))
address=input(“Veuillez saisir l'adresse:”)
telenumber=input(“Veuillez entrer le numéro de téléphone:”)
sql1 = ‘insert into TA(ID,NAME,AGE,ADDRESS,TELENUMBER)’
sql1 += ‘values("%d","%s","%d","%s","%s");’ % (ID,name, age, address, telenumber)
conn.execute(sql1)
conn.commit()#Soumettre,Sinon, impossible d'enregistrer
print(“Soumis avec succès!!”)
Supprimer les informations de l'utilisateur

def delete():
global conn
c=conn.cursor()
i = input(“ Veuillez saisir le nom ou le numéro de téléphone de la personne - ressource que vous souhaitez supprimer :”)
if len(i) < 11:
cursor = c.execute(“SELECT name from TA where name = ‘%s’;”%i)
for row in cursor:
if i == row[0]:
c.execute(“DELETE from TA where name =’%s’;”%i)
conn.commit()
print(“ Suppression réussie des coordonnées !!”)
break
else:
print(“ Le contact n'existe pas !!”)
else :
cursor = c.execute(“SELECT name from TA where telenumber= ‘%s’;” % i)
for row in cursor:
if i == row[0]:
c.execute(“DELETE from TA where telenumber =’%s’;” % i)
conn.commit()
print(“ Suppression réussie des coordonnées !!”)
break
else:
print(“ Le numéro de téléphone est incorrect !!”)
Interrogation des informations de l'utilisateur

def search():
global conn
c = conn.cursor()
i = input(“ Veuillez entrer le nom ou le numéro de téléphone de la personne - ressource à interroger :”)
if i.isnumeric():
sql1 = “SELECT id,name,age, address, telenumber from TA where telenumber like '%” + i + “%’”
cursor = c.execute(sql1)
res=cursor.fetchall()
if len(res)!=0:
for row in res:
print(“id:{0}”.format(row[0]))
print(“Nom:{0}”.format(row[1]))
print(“Âge:{0}”.format(row[2]))
print(“Adresse:{0}”.format(row[3]))
print(“Numéro de téléphone:{0}”.format(row[4]))
else:
print(“ Pas de numéro de téléphone !!”)
else:
sql1=“SELECT id,name,age, address, telenumber from TA where name like '%”+i+"%’"
cursor = c.execute(sql1)
res=cursor.fetchall()
if len(res) == 0:
print(“ Le contact n'existe pas !!”)
else:
for row in res:
print(“id:{0}”.format(row[0]))
print(“Nom:{0}”.format(row[1]))
print(“Âge:{0}”.format(row[2]))
print(“Adresse:{0}”.format(row[3]))
print(“Numéro de téléphone:{0}”.format(row[4]))
Afficher toutes les informations de l'utilisateur

def showall():
global conn
c = conn.cursor()
cursor = c.execute(“SELECT id, name, age, address, telenumber from TA”)
for row in cursor:
print(“id:{0}”.format(row[0]))
print(“Nom:{0}”.format(row[1]))
print(“Âge:{0}”.format(row[2]))
print(“Adresse:{0}”.format(row[3]))
print(“Numéro de téléphone:{0}”.format(row[4]))
print("Les directives sont les suivantes::\n1.Entrée"add" Ajouter des coordonnées au carnet d'adresses \n2.Entrée"delete" Supprimer les coordonnées spécifiées dans le carnet d'adresses \n3.Entrée"searchall" Rechercher tous les utilisateurs dans le carnet d'adresses \n4.Entrée"search" Rechercher des informations par nom ou numéro de téléphone portable ")
while 1:
temp = input(“Veuillez saisir la commande:”)
if temp == “add”:
insert()
print(“Ajouté avec succès!”)
temp1=input(“ Continuer à utiliser le carnet d'adresses ?(y or n)”)
if temp1==“n”:
print(“Sortie réussie!!”)
break
else:
continue
elif temp==“delete”:
delete()
temp1 = input(“ Continuer à utiliser le carnet d'adresses ?(y or n)”)
if temp1 == “n”:
print(“Sortie réussie!!”)
break
else:
continue
elif temp==“searchall”:
showall()
temp1 = input(“ Voulez - vous continuer avec le carnet d'adresses ?(y or n)”)
if temp1 == “n”:
print(“Sortie réussie!!”)
break
else:
continue
elif temp==“search”:
search()
temp1 = input(“ Voulez - vous continuer avec le carnet d'adresses ?(y or n)”)
if temp1 == “n”:
print(“Sortie réussie!!”)
break
else:
continue
else:
print(“ Veuillez saisir la bonne commande !!”)
conn.close()#Fermer la base de données

版权声明
本文为[Nightmare 762459510]所创,转载请带上原文链接,感谢
https://pythonmana.com/2021/11/20211125182917913u.html

  1. python3.7 FileNotFoundError: [WinError 2] 系统找不到指定的文件。
  2. 最全面的Python重点知识汇总
  3. python中 我想爬取一个网页,我在cmd中pip list中已经把requests 以及bs4 弄好了 但是他还是提示我没有那个模块
  4. You can learn Python articles without reading online classes (the first day)
  5. 在Python和Go项目之后使用Rust的经验分享 - scaleway
  6. 使用PyO3从Python调用 Rust:加速Python
  7. Python 3.7 filenotfounderror: [winerror 2] le système n'a pas pu trouver le fichier spécifié.
  8. Python 一切皆对象
  9. 【Pandas学习笔记01】强大的分析结构化数据的工具集
  10. 求各位亲们可以解答一下嘛,为什么跑不出来呀,大学Python
  11. 【Pandas学习笔记01】强大的分析结构化数据的工具集
  12. python飞机大战如何让飞机始终在界面中,不能跑出界面
  13. Python代码阅读(第63篇):数字奇偶性
  14. python建立⼀個圖形介⾯應⽤(GUI app)
  15. python接口自动化的html格式报告以邮件形式发送展示的原文很丑怎么处理
  16. 针对初学者,我建议你学这 3 个 Python AutoEDA 工具包
  17. #yyds干货盘点#Python-爬虫_urlib一个类型和六个方法
  18. Pour les débutants, je vous recommande d'apprendre ces 3 kits autoeda Python
  19. 我想问python怎么入门嘞?求各路人士
  20. Summary of today's Django lessons: data reverse query triggers error field 'score_ jieshoufankui‘ expected a number but got ‘‘-20211109
  21. 关于#python_while循环的写法#的问题,如何解决?
  22. Python异常处理中异常的种类有哪些?你知道几个?
  23. Python异常處理中异常的種類有哪些?你知道幾個?
  24. Quels sont les types d'exceptions dans la gestion des exceptions python? Combien en savez - vous?
  25. À propos de # Python Comment résoudre le problème de l'écriture de la Boucle while?
  26. Python如何操作system.data.sqlite数据库
  27. python数字游戏,让你欲罢不能
  28. Python中的可迭代对象、迭代器、For循环工作机制、生成器
  29. 一个从没接触过编程的人,如何自学进入Python行业?
  30. 一份超级实用的 Python ”技巧“清单
  31. Python 程序员给上路初学者的3点忠告
  32. 3 conseils pour les débutants sur la route par les programmeurs Python
  33. Une liste de conseils Python super pratiques
  34. Comment quelqu'un qui n'a jamais été en contact avec la programmation peut - il apprendre à entrer dans l'industrie python?
  35. Objets itérables, itérateurs, pour le mécanisme de travail circulaire, générateurs en python
  36. Les Jeux de chiffres Python vous font vous arrêter
  37. Comment Python fonctionne avec la base de données system.data.sqlite
  38. Python之html与markdown互相转换
  39. Python之html與markdown互相轉換
  40. Conversion HTML et markdown de Python
  41. Python生成的随机数,要怎么设定成随机数a小于随机数b啊
  42. Python生成的隨機數,要怎麼設定成隨機數a小於隨機數b啊
  43. Le nombre aléatoire généré par Python, comment définir le nombre aléatoire a est inférieur au nombre aléatoire B
  44. Python爬虫能做什么
  45. Python老技师给上路初学者的3点忠告
  46. 3 conseils aux débutants sur la route de l'ancien technicien Python
  47. Que peuvent faire les reptiles Python
  48. The code NPM cloned from git will report a python error after it is installed!
  49. 数据分析从零开始实战,Pandas读写CSV数据
  50. Python基础(十二):类与对象
  51. Python Foundation (12): classes et objets
  52. Python基礎(十二):類與對象
  53. L'analyse des données commence à zéro et pandas lit et écrit les données CSV
  54. Python Qt GUI设计:QSlider滑动条类(基础篇—16)
  55. #yyds干货盘点#数据分析从零开始实战,Pandas读写CSV数据
  56. This paper designs an examination system for automatically setting questions and judging papers by using Python standard library language to investigate the ability of users to calculate four integers within 100.
  57. Yyds Dry Inventory # Data Analysis started from zero, pandas read and write CSV Data
  58. python数据结构:数组、列表、栈、队列及实现
  59. Python编程真的是未来人工智能的主流吗?
  60. Python编写通讯录,支持模糊查询,利用数据库存储