python通讯录程序设计-python数据库编程 Mysql实现通讯录的查询联系人。查询条件有联系人姓名、性别和类别,可任意组合查询。在查询中不输入任何条件,即查询所有联系人信息。
时间: 2024-03-07 09:49:20 浏览: 253
好的,以下是一个使用Python和MySQL实现通讯录管理系统的查询联系人功能的示例代码,您可以参考一下:
```python
import pymysql
# 连接数据库
conn = pymysql.connect(host='localhost', port=3306, user='root', password='password', db='addressbook')
# 查询联系人
def search_contacts(name=None, gender=None, category=None):
cur = conn.cursor()
if name is None and gender is None and category is None:
# 如果查询条件为空,则查询所有联系人信息
sql = 'SELECT * FROM contacts'
else:
# 根据输入的查询条件进行查询
sql = 'SELECT * FROM contacts WHERE 1=1'
if name is not None:
sql += " AND name = '{}'".format(name)
if gender is not None:
sql += " AND gender = '{}'".format(gender)
if category is not None:
sql += " AND category = '{}'".format(category)
cur.execute(sql)
results = cur.fetchall()
cur.close()
return results
# 测试查询联系人
results = search_contacts()
print(results)
results = search_contacts(name='张三')
print(results)
results = search_contacts(gender='男', category='朋友')
print(results)
# 关闭数据库连接
conn.close()
```
上述代码中,我们首先通过`pymysql`模块连接到MySQL数据库,然后定义了一个`search_contacts`函数用于查询联系人信息。该函数支持根据联系人的姓名、性别和类别等条件进行查询,如果查询条件为空,则返回所有联系人的信息。在查询时,我们通过拼接SQL语句的方式来构建查询条件,并将查询结果返回给调用者。最后,我们通过测试代码来测试查询联系人功能是否正常工作。
这只是一个简单的示例代码,实际情况可能会更加复杂。但是,希望这能够为您提供一些帮助。
阅读全文