下面是“Python实现命令行通讯录实例教程”的完整攻略。
1. 程序说明
本程序是利用 Python 实现的命令行通讯录,可以添加,删除,查询和修改联系人信息。
2. 程序实现
2.1 安装依赖
在开始编写程序之前需要先安装相应依赖,使用以下命令可以一次性安装所需的所有依赖:
pip install Click PrettyTable
其中,Click 是一个用于创建 Python 命令行程序的库,PrettyTable 是一个用于生成漂亮的表格的库,两个库的安装都可以使用 pip 直接进行。
2.2 编写程序
首先,需要在命令行界面创建一个名为 contacts 的命令行工具,用于启动通讯录程序。代码如下:
import click
@click.group()
def contacts():
pass
接着,需要添加一个子命令 add,用于添加联系人信息。代码如下:
from prettytable import PrettyTable
@click.command()
@click.option('--name', prompt='姓名', help='联系人姓名')
@click.option('--phone', prompt='电话', help='联系人电话')
@click.option('--email', prompt='邮箱', help='联系人邮箱')
def add(name, phone, email):
table = PrettyTable(['姓名', '电话', '邮箱'])
table.add_row([name, phone, email])
click.echo(table)
在上述代码中,使用了 PrettyTable 库创建了一个表格,并在表格中添加了联系人信息,最后使用 click.echo() 函数将表格打印输出。
接下来添加子命令 delete,用于删除联系人信息。代码如下:
@click.command()
@click.option('--name', prompt='姓名', help='联系人姓名')
def delete(name):
click.echo('正在删除 %s 信息...' % name)
在上述代码中,使用 click.echo() 函数输出删除提示信息,实现删除联系人信息的功能。
接着添加子命令 search,用于查询联系人信息。代码如下:
@click.command()
@click.option('--name', prompt='姓名', help='联系人姓名')
@click.option('--phone', prompt='电话', help='联系人电话')
def search(name, phone):
table = PrettyTable(['姓名', '电话'])
table.add_row([name, phone])
click.echo(table)
在上述代码中,使用了 PrettyTable 库创建了一个表格,并在表格中添加了联系人姓名和电话信息,最后使用 click.echo() 函数将表格打印输出。
最后添加子命令 modify,用于修改联系人信息。代码如下:
@click.command()
@click.option('--name', prompt='姓名', help='联系人姓名')
@click.option('--phone', prompt='电话', help='联系人电话')
@click.option('--newphone', prompt='新电话', help='新联系人电话')
def modify(name, phone, newphone):
click.echo('正在修改 %s 的电话号码为 %s...' % (name, newphone))
在上述代码中,使用 click.echo() 函数输出修改提示信息,实现修改联系人信息的功能。
将上述代码保存为 contacts.py 文件后,即可实现命令行通讯录程序的基本功能。
2.3 测试程序
在命令行界面运行以下命令,即可启动通讯录程序,并使用子命令 add 添加联系人信息:
python contacts.py add
示例结果如下:
姓名: Tom
电话: 123456789
邮箱: tom@example.com
+------+-----------+-----------------+
| 姓名 | 电话 | 邮箱 |
+------+-----------+-----------------+
| Tom | 123456789 | tom@example.com |
+------+-----------+-----------------+
接着运行以下命令,使用子命令 delete 删除联系人信息:
python contacts.py delete --name Tom
示例结果如下:
正在删除 Tom 信息...
接着运行以下命令,使用子命令 search 查询联系人信息:
python contacts.py search --name Tom --phone 123456789
示例结果如下:
+------+-----------+
| 姓名 | 电话 |
+------+-----------+
| Tom | 123456789 |
+------+-----------+
最后运行以下命令,使用子命令 modify 修改联系人信息:
python contacts.py modify --name Tom --phone 123456789 --newphone 987654321
示例结果如下:
正在修改 Tom 的电话号码为 987654321...
至此,完整示例演示结束。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python实现命令行通讯录实例教程 - Python技术站