专栏首页python3python阅读器代码

python阅读器代码

最近在学习python,作业是用python写一个阅读器:

要求如下:

    1,有自动阅读模式

    2,可以上下翻页

实战:

代码如下:

#coding:utf-8
import time
tl = []   #用于存放位置
def readers(path,lines=5,auto=False,times=3):
    with open(path,"r") as f:
        f.seek(0,2)         #移动到末尾
        last = f.tell()     #记住末尾位置
        f.seek(0)           #移动到文档首部
        for i in range(lines):      #先阅读几行
            print(f.readline())
        tl.append(f.tell())         #记录位置到列表
        if auto == True:            #自动阅读
            while f.tell() < last:
                for i in range(lines):
                    print(f.readline())
                time.sleep(times)
        else:
            while f.tell() < last:
                contorl = raw_input("输入N|n向下翻页,M|m向上翻页,Q|q退出阅读! >>>")
                if contorl == "q" or contorl == "Q":
                    print("您选择退出阅读!")
                    break
                elif contorl == "n" or contorl =="N":
                    for i in range(lines):
                        print(f.readline()),
                    tl.append(f.tell())
                elif contorl == 'm' or contorl =="M":
                    if len(tl) == 1:
                        print("已经是首页啦!")
                        continue
                    elif len(tl) == 2:
                        f.seek(0)
                        for i in range(lines):
                            print(f.readline()),
                        tl.pop()
                        continue
                    else:
                        f.seek(tl[-3])
                        for i in range(lines):
                            print(f.readline()),
                        tl.pop()
            print("已经到文章底部了!")
if  __name__ == "__main__":
    #readers("1.txt",auto=True,lines=6,times=5)
    readers("1.txt")

测试:

可以修改为自动阅读模式和时间,以下是手动翻页阅读结果:

写的不是很好,如有不当之处,欢迎指正交流~

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Python自动化开发学习1

    四、变量。虽然驼峰规则也行,但是python推荐用_下划线,那就用下划线把。变量名全大写表示常量

    py3study
  • Python常见的脚本汇总

    斐波那契数列指的是这样一个数列 0, 1, 1, 2, 3, 5, 8, 13;特别指出:第0项是0,第1项是第一个1。从第三项开始,每一项都等于前两项之和。

    py3study
  • python---字符串

    py3study
  • Python常见的脚本汇总

    斐波那契数列指的是这样一个数列 0, 1, 1, 2, 3, 5, 8, 13;特别指出:第0项是0,第1项是第一个1。从第三项开始,每一项都等于前两项之和。

    py3study
  • 关于面试总结4-python笔试题

    现在面试测试岗位,一般会要求熟悉一门语言(python/java),为了考验求职者的基本功,一般会出2个笔试题,这些题目一般不难,主要考察基本功。 要是给你一台...

    上海-悠悠
  • Python 中那些令人拍案叫绝的功能!

    链接:www.oschina.net/translate/python-functions

    Rocky0429
  • Python学习之条件,判断,循环语句学习 原

    用户2603479
  • 小甲鱼《零基础学习Python》课后笔记(九):了不起的分支和循环2

    打印2,3。第一个break跳过print(1),跳到print(2);第二个break跳出第2个while循环,跳到print(3)。

    小火柴棒
  • 【25】Python生成器generat

    进入正题:生成器 通过列表生成式,我们可以直接创建一个列表。但是,受内存限制,列表的容量肯定有限。如果创建大量数据,结果只用到几条,那也是相当占用空间的。 所以...

    py3study
  • Python3 基础语法教程

    编码 默认情况下,Python 3 源码文件以 UTF-8 编码,所有字符串都是 unicode 字符串。 当然你也可以为源码文件指定不同的编码:

    py3study

扫码关注云+社区

领取腾讯云代金券