python实现电子书翻页小程序


Posted in Python onJuly 23, 2019

本文实例为大家分享了python实现电子书翻页的具体代码,供大家参考,具体内容如下

1.题目:

电子书翻页:

(1)自动翻页:每次默认读三行,读完之后睡两秒,直到把所有内容全部读出来

(2)手动翻页:输入N阅读下一页,输错提示重新输入,直到把所有内容全部读出来

2.效果:

电子书为:file/a.txt

python实现电子书翻页小程序

自动翻页:

每隔两秒出现三行

直到a.txt里面的所有内容都显示出来

python实现电子书翻页小程序

手动翻页:

输入N显示三行,输错则提示重新再输

直到a.txt的所有内容全部显示出来

python实现电子书翻页小程序

3.思路:

(1)先确定好电子书为:file/a.txt

(2)首先要读电子书有两种方法:

1)with   open(path,mode='r') as f:

2)print(f.read())

(3)自动翻页:

1) 每次读三行:通过for 循环遍历,每次读一行,读三次

for i in range(line):
    print(f.readline(),end='')

 2) 睡两秒:导入时间模块

        import time

         time.sleep(2)

(4)手动翻页:

1)  输入N阅读下一页:使用input()函数实现

2)  每页显示的情况和自动翻页一样,使用for循环遍历

(5)判断阅读结束

先将光标移动到文件末尾,把这个位置记作:end_position

每读完一页,记录一下,当前文件光标的位置:now_position

比较这两个位置,如果大小一样,则阅读结束

4.代码:

import time
 
 
def read_book(path, line=3, auto=False):
 with open(path, mode='r') as f:
 # 获取文件的总长度
 f.seek(0, 2) # 先跳转到末尾位置
 end_position = f.tell() # 读取位置
 # print(end_position)
 f.seek(0, 0) # 将光标移动到文件的开头
 
 while True:
 if auto == True:
 '''自动翻页'''
 for i in range(line):
  print(f.readline(), end='')
 time.sleep(2)
 now_position = f.tell()
 if now_position == end_position:
  break
 
 
 else:
 '''手动翻页'''
 num = input('请输入N阅读下一页:')
 if num == 'N':
  for i in range(line):
  print(f.readline(), end='')
  now_position = f.tell()
  if now_position == end_position:
  print()
  print('亲,好勤奋啊,读完了')
  break
 else:
  print('输错了哦,请重新输入...')
 
 
read_book('file/a.txt')

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python2.7删除文件夹和删除文件代码实例
Dec 18 Python
Python中使用多进程来实现并行处理的方法小结
Aug 09 Python
Python编程实现微信企业号文本消息推送功能示例
Aug 21 Python
Python标准库inspect的具体使用方法
Dec 06 Python
Python爬虫使用脚本登录Github并查看信息
Jul 16 Python
Python玩转加密的技巧【推荐】
May 13 Python
python 整数越界问题详解
Jun 27 Python
Django中自定义查询对象的具体使用
Oct 13 Python
10个Python面试常问的问题(小结)
Nov 20 Python
Python基于Twilio及腾讯云实现国际国内短信接口
Jun 18 Python
详解向scrapy中的spider传递参数的几种方法(2种)
Sep 28 Python
浅谈Python从全局与局部变量到装饰器的相关知识
Jun 21 Python
Python 正则表达式 re.match/re.search/re.sub的使用解析
Jul 22 #Python
python使用原始套接字发送二层包(链路层帧)的方法
Jul 22 #Python
微信公众号token验证失败解决方案
Jul 22 #Python
django 消息框架 message使用详解
Jul 22 #Python
django 邮件发送模块smtp使用详解
Jul 22 #Python
Pandas 重塑(stack)和轴向旋转(pivot)的实现
Jul 22 #Python
Pandas透视表(pivot_table)详解
Jul 22 #Python
You might like
php设计模式 Decorator(装饰模式)
2011/06/26 PHP
PHP构造二叉树算法示例
2017/06/21 PHP
thinkphp5.0自定义验证规则使用方法
2017/11/16 PHP
详解提高使用Java反射的效率方法
2019/04/29 PHP
JavaScript 私有成员分析
2009/01/13 Javascript
JQuery UI皮肤定制
2009/07/27 Javascript
js 鼠标拖动对象 可让任何div实现拖动效果
2009/11/09 Javascript
js获取图片长和宽度的代码
2009/11/24 Javascript
Extjs学习笔记之八 继承和事件基础
2010/01/08 Javascript
禁止你的左键复制实用技巧
2013/01/04 Javascript
jquery右下角自动弹出可关闭的广告层
2015/05/08 Javascript
JavaScript实现带箭头标识的多级下拉菜单效果
2015/08/27 Javascript
JavaScript头像上传插件源码分享
2016/03/29 Javascript
Bootstrap Metronic完全响应式管理模板学习笔记
2016/07/08 Javascript
JavaScript对JSON数据进行排序和搜索
2017/07/24 Javascript
Vue.js仿微信聊天窗口展示组件功能
2017/08/11 Javascript
Vuex实现简单购物车
2021/01/10 Vue.js
python虚拟环境的安装配置图文教程
2017/10/20 Python
python爬虫 正则表达式使用技巧及爬取个人博客的实例讲解
2017/10/20 Python
安装python3的时候就是输入python3死活没有反应的解决方法
2018/01/24 Python
Python处理CSV与List的转换方法
2018/04/19 Python
Python结合ImageMagick实现多张图片合并为一个pdf文件的方法
2018/04/24 Python
python 实现倒排索引的方法
2018/12/25 Python
python requests post多层字典的方法
2018/12/27 Python
Django之无名分组和有名分组的实现
2019/04/16 Python
HTML5资源预加载(Link prefetch)详细介绍(给你的网页加速)
2014/05/07 HTML / CSS
俄罗斯花园种植材料批发和零售网上商店:Беккер
2019/07/22 全球购物
使用索引有什么好处
2016/07/27 面试题
协议书模板
2014/04/23 职场文书
竞选大队长演讲稿
2014/04/29 职场文书
公司担保书范文
2014/05/21 职场文书
咖啡厅商业计划书
2014/09/15 职场文书
村委会贫困证明范本
2014/09/17 职场文书
党员争先创优承诺书
2015/01/20 职场文书
SpringBoot 集成短信和邮件 以阿里云短信服务为例
2022/04/22 Java/Android
如何基于python实现单目三维重建详解
2022/06/25 Python