使用Python制作交互式电话簿 - 需要有关从哪里开始的帮助。

时间:2013-10-22 07:48:57

标签: python

由于我是编程和Python的新手,我在编写时遇到了一些困难。

任何人都可以指出我正确的方向,并帮助我如何思考这样的问题,从哪里开始?


电话簿:

此分配旨在练习使用字典和对象(尽管这不是必需的),特别是用于处理别名。此外,要编写的程序将是交互式的。还需要一些基本的错误处理,但是如果要使用Python实现这一点,则会出现一个设计问题,即决策权属于您。

分配是编写一个交互式程序,通过一组简单的命令管理动态电话簿(动态意味着它可以在电话簿中更改)。这些命令应该都是一行,并且能够分成两个字之间的空格。提示可以是完全可选的(提示=在程序等待用户输入之前打印的内容)。应该处理以下命令(可以随意添加更多命令): 添加名称编号 - 将带编号的名称添加到目录中。这里允许限制它,以便名称必须是唯一的(两个不同的人不能被命名为相同)。 查找名称 - 打印为名称存储的数字。 aliasName newname - 让名称也可以在名称newname下搜索。 更改名称编号 - 将与现有名称关联的编号更改为编号。 save filename - 将目录内容保存到文件filename。 load filename - 将文件filename的内容读取到目录中。内存中的电话簿被丢弃(加载后,我们只有电话簿从文件到内存)。 退出 - 退出交互式执行

对于add命令,如果已在电话簿中定义了名称,则将生成错误消息:对于另一个,如果未定义名称,则会出现错误打印。定义为别名的名称(使用别名命令)将以与所有名称相同的方式用于查找,更改和别名命令,以便获得以下行为:

电话簿>添加peter.forsberg 12345
电话簿>查找peter.forsberg
12345
电话簿>别名peter.forsberg foppa
电话簿>查找foppa
12345
电话簿>别名foppa MR21
电话簿>改变MR21 67890
电话簿>查找peter.forsberg
67890

2 个答案:

答案 0 :(得分:1)

将其分解为较小的任务 - 例如只需创建提示,然后回显所有输入的内容等。

然后,您可以开始执行这些任务,因为它们更易于管理。

答案 1 :(得分:0)

这就像你想要的那样

http://en.wikibooks.org/wiki/Non-Programmer's_Tutorial_for_Python_3/File_IO

或此python脚本

http://sourceforge.net/projects/dot-phonebook/

尝试理解这一点并询问您是否面临任何问题