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 相关文章推荐
Python从MP3文件获取id3的方法
Jun 15 Python
深入浅析python继承问题
May 29 Python
win与linux系统中python requests 安装
Dec 04 Python
Python编程实现控制cmd命令行显示颜色的方法示例
Aug 14 Python
用Python实现大文本文件切割的方法
Jan 12 Python
对python列表里的字典元素去重方法详解
Jan 21 Python
Python定时任务APScheduler的实例实例详解
Jul 22 Python
Python实现线性判别分析(LDA)的MATLAB方式
Dec 09 Python
Python3+Selenium+Chrome实现自动填写WPS表单
Feb 12 Python
基于python计算滚动方差(标准差)talib和pd.rolling函数差异详解
Jun 08 Python
如何利用python之wxpy模块玩转微信
Aug 17 Python
python中K-means算法基础知识点
Jan 25 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终止脚本运行三种实现方法详解
2020/09/01 PHP
运用Windows XP附带的Msicuu.exe、Msizap.exe来彻底卸载顽固程序
2007/04/21 Javascript
学习从实践开始之jQuery插件开发 菜单插件开发
2012/05/03 Javascript
SOSO地图API使用(一)在地图上画圆实现思路与代码
2013/01/15 Javascript
解决Extjs4中form表单提交后无法进入success函数问题
2013/11/26 Javascript
Javascript中对象继承的实现小例
2014/05/12 Javascript
js简单工厂模式用法实例
2015/06/30 Javascript
使用Function.apply()的参数数组化来提高 JavaScript程序性能的技巧
2015/12/23 Javascript
JavaScript中的Array 对象(数组对象)
2016/06/02 Javascript
jquery计算出left和top,让一个div水平垂直居中的简单实例
2016/07/13 Javascript
jquery实现表单获取短信验证码代码
2017/03/13 Javascript
JS字符串按逗号和回车分隔的方法
2017/04/25 Javascript
AngularJS 异步解决实现方法
2017/06/12 Javascript
浅谈在vue中用webpack打包之后运行文件的问题以及相关配置方法
2018/02/21 Javascript
详解javascript中的babel到底是什么
2018/06/21 Javascript
浅谈VUE单页应用首屏加载速度优化方案
2018/08/28 Javascript
微信小程序module.exports模块化操作实例浅析
2018/12/20 Javascript
浅谈JS的原型和继承
2019/05/08 Javascript
微信小程序自定义波浪组件使用方法详解
2019/09/21 Javascript
基于js实现复制内容到操作系统粘贴板过程解析
2019/10/11 Javascript
详解Webpack4多页应用打包方案
2020/07/16 Javascript
vue+vant 上传图片需要注意的地方
2021/01/03 Vue.js
[01:47]2018年度DOTA2最具人气解说-完美盛典
2018/12/16 DOTA
简单介绍Python的轻便web框架Bottle
2015/04/08 Python
Python根据成绩分析系统浅析
2019/02/11 Python
python3 pygame实现接小球游戏
2019/05/14 Python
Python实现Singleton模式的方式详解
2019/08/08 Python
pytorch 常用线性函数详解
2020/01/15 Python
tensorflow -gpu安装方法(不用自己装cuda,cdnn)
2020/01/20 Python
Python自动重新加载模块详解(autoreload module)
2020/04/01 Python
Django日志及中间件模块应用案例
2020/09/10 Python
大学生评语大全
2014/04/18 职场文书
法制宣传月活动方案
2014/05/11 职场文书
2015年安全生产月工作总结
2015/07/27 职场文书
2016年小学“感恩教师”主题队日活动总结
2016/04/01 职场文书
Vue h函数的使用详解
2022/02/18 Vue.js