再来回顾一些咱们设想的交互部分,为了方便对照,直接放在这里python
个人设想是这样的,咱们会将文章的标题作成一个列表来显示,并将这些标题排好序,而后输入标题前面的序号来查看相应的文章,在浏览文章时能够选择按"b"返回到标题的列表,也能够按"s"将文章下载到本地并返回标题列表,或者直接按q退出程序
调试
可是咱们的交互,一开始并不该该弄得这么复杂,由于前面两部分的代码虽然很少可是也很多,要是所有加进来的话很容易会形成混乱,给咱们的调试带来麻烦,这是很忌讳的,因此,咱们应该用比较简单的数据来模拟整个逻辑流程,当流程走得通以后咱们再将其余部分加进去code
前面咱们设想的流程是,显示文章标题的列表,而后输入标题的序号来查看正文内容,在查看的时候,输入不一样的字母还能够实现不一样的功能,这就说明,咱们须要两个循环,循环1是一直等待输入文章的序号,循环2是等待输入其余的按键,来实现不一样的操做,因此咱们须要两个循环,并且是一直执行监听的循环,在循环2中咱们还有返回到标题列表的操做,也就是说循环2要可以返回到循环1里面继续等待输入,这就须要两个循环是嵌套的关系文档
因此两个循环的功能和关系应该是这样的:循环1一直等待用户输入文章的序号,获取到序号以后进入循环2,循环2等待用户输入"b"或者"s",执行完相应的操做以后返回循环1,再重复整个流程,若是循环2中输入"q",则终止整个程序
input
这些循环,break,continue,while 什么的,是python的基本知识,如今这个时候,应该学着经过python的官方文档来补充前面的薄弱的知识,而后想要实现的功能应该先设想好整个逻辑的流程,在纸上将整个流程的步骤一一写出来,想好每一步应该怎么实现,而后不断的尝试,得出本身想要的效果,整个交互流程的模拟我也是尝试了两三次以后才成功的,最终实现的代码是这样的
源码
#!/usr/bin/env python # -*- coding:UTF-8 -*- __author__ = '217小月月坑' def ha(): print "1 \0 papapa" print "2 \0 hahaha" print "3 \0 hehehe" ha() list = ["papapa","hahaha","hehehe"] while (True): a = input("请输入想要输出的行的序号:") print list[a-1] while (True): b = raw_input("请选择下一步的操做(b:返回标题列表;s:保存文章并返回标题列表;q:退出程序):") if b=="b": print "返回标题列表" ha() break if b=="s": print "保存文件并返回标题列表" ha() break if b=="q": print "退出程序" exit(0) continue
结果是这样的:it
第三部分的功能也大体实现了,加上前面实现的两个功能,咱们已经把主要功能点的代码都已经写出来了,接下来只要想办法把这三个功能点串起来就可以完成这个实例的源码了
class