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类的多重继承问题深入分析
Nov 09 Python
Python UnicodeEncodeError: 'gbk' codec can't encode character 解决方法
Apr 24 Python
python+requests+unittest API接口测试实例(详解)
Jun 10 Python
Python3.x对JSON的一些操作示例
Sep 01 Python
Python实现自定义顺序、排列写入数据到Excel的方法
Apr 23 Python
django认证系统实现自定义权限管理的方法
Jul 16 Python
对python实现合并两个排序链表的方法详解
Jan 23 Python
对django views中 request, response的常用操作详解
Jul 17 Python
Python使用微信接入图灵机器人过程解析
Nov 04 Python
python词云库wordcloud的使用方法与实例详解
Feb 17 Python
python超详细实现完整学生成绩管理系统
Mar 17 Python
Python Matplotlib绘制等高线图与渐变色扇形图
Apr 14 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
DC四月将推出百页特刊漫画 纪念小丑诞生80周年
2020/04/09 欧美动漫
十天学会php之第五天
2006/10/09 PHP
php控制linux服务器常用功能 关机 重启 开新站点等
2012/09/05 PHP
php 下载保存文件保存到本地的两种实现方法
2013/08/12 PHP
什么是PHP文件?如何打开PHP文件?
2017/06/27 PHP
PHP生成短网址的思路以及实现方法的详解
2019/03/25 PHP
PHP7导出Excel报ERR_EMPTY_RESPONSE解决方法
2019/04/16 PHP
javascript Array数组对象的扩展函数代码
2010/05/22 Javascript
Javascript改变CSS样式(局部和全局)
2013/12/18 Javascript
jquery检测input checked 控件是否被选中的方法
2014/03/26 Javascript
JavaScript Array对象扩展indexOf()方法
2014/05/09 Javascript
javascript记录文本框内文字个数检测文字个数变化
2014/10/14 Javascript
BootStrap入门教程(三)之响应式原理
2016/09/19 Javascript
基于JavaScript实现前端文件的断点续传
2016/10/17 Javascript
Bootstrap导航中表单简单实现代码
2017/03/06 Javascript
laydate 显示结束时间不小于开始时间的实例
2017/08/11 Javascript
实例讲解javascript实现异步图片上传方法
2017/12/05 Javascript
JavaScript实现的DOM树遍历方法详解【二叉DOM树、多叉DOM树】
2018/05/07 Javascript
layer ui插件显示tips时,修改字体颜色的实现方法
2019/09/11 Javascript
python实现将元祖转换成数组的方法
2015/05/04 Python
搞笑的程序猿:看看你是哪种Python程序员
2015/06/12 Python
python数据分析数据标准化及离散化详解
2018/02/26 Python
Python3中bytes类型转换为str类型
2018/09/27 Python
Python 使用threading+Queue实现线程池示例
2019/12/21 Python
The North Face北面德国官网:美国著名户外品牌
2018/12/12 全球购物
描述JSP和Servlet的区别、共同点、各自应用的范围
2012/10/02 面试题
简短的公司员工自我评价分享
2013/11/13 职场文书
企业演讲比赛主持词
2014/03/18 职场文书
小学教师个人先进事迹材料
2014/05/17 职场文书
运动会演讲稿100字
2014/08/25 职场文书
小学老师对学生的评语
2014/12/29 职场文书
大三学生英语考试作弊检讨书
2015/01/01 职场文书
保研专家推荐信范文
2015/03/25 职场文书
解决Golang time.Parse和time.Format的时区问题
2021/04/29 Golang
Vue详细的入门笔记
2021/05/10 Vue.js
详细谈谈MYSQL中的COLLATE是什么
2021/06/11 MySQL