python实现电子书翻页小程序
作者:也许会_hui 发布时间:2022-11-16 11:10:29
标签:python,电子书,翻页
本文实例为大家分享了python实现电子书翻页的具体代码,供大家参考,具体内容如下
1.题目:
电子书翻页:
(1)自动翻页:每次默认读三行,读完之后睡两秒,直到把所有内容全部读出来
(2)手动翻页:输入N阅读下一页,输错提示重新输入,直到把所有内容全部读出来
2.效果:
电子书为:file/a.txt
自动翻页:
每隔两秒出现三行
直到a.txt里面的所有内容都显示出来
手动翻页:
输入N显示三行,输错则提示重新再输
直到a.txt的所有内容全部显示出来
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')
来源:https://blog.csdn.net/g_optimistic/article/details/86224898#1.%E9%A2%98%E7%9B%AE%EF%BC%9A
0
投稿
猜你喜欢
- 前言前段时间我有个朋友看到一些小姐姐的照片,想全部下载下来,叫我帮个忙。于是花费了半天给他全部下载了下来。引入库import timeimp
- 程序需要多进程见共享内存,使用了Manager的dict。最初代码如下:from multiprocessing import Proces
- 这几天一直在看《Pro JavaScript Techniques》,书中有不少优美、健壮代码,让我不得不惊叹老外对语言这东西的研究程度之深
- 首先你要明白24bit的bmp图片的基本信息:1像素占3个字节,头部占54个字节。好了,现在开始做验证码了,这里以4位验证码(大小为20(高
- 很多时候,由于程序设计需要,要求在asp的include包含文件里调用动态的文件。如<!--#include file=&q
- php的引用(就是在变量或者函数、对象等前面加上&符号),在PHP 中引用的意思是:不同的名字访问同一个变量内容。与C语言中的指针是
- 我想让一片文章,每到3000字就分到下一条插入到数据库,求高手 <%Dim Content Conte
- 模块导入1.1 import导入模块所谓的模块其实就是一个外部的工具包,其中存在的其实就是Python文件,这些文件都实现了某种特定的功能,
- 如下所示:# 计算一个字符串中所有数字的和def numsum(s):sum = 0
- 上篇介绍的使用python自带tkinter包,来写带界面的工具。此篇介绍使用pyqt来开发测试工具。tkinter的好处是python官方
- 如果你象作者一样记性不好,那么你可能根本记不住人们的名字。我遇到人时,多半只是点点头,问句“吃了嘛!”,而且期望问候到此为止 。如果还需要表
- 什么是LSTM1、LSTM的结构我们可以看出,在n时刻,LSTM的输入有三个:当前时刻网络的输入值Xt;上一时刻LSTM的输出值ht-1;上
- 如下所示:import pandas as pdpath='F:/python/python数据分析与挖掘实战/图书配套数据、代码/
- 昨天碰到的,如果键是中文,如何进行匹配呢,先看文本内容: 这是字典里两个元素的内容,编码是utf-8,中文内容运行代码如下# -*- cod
- 一、插补查找算法插补查找算法又称为插值查找,它是折半查找算法的改进版。插补查找是按照数据的分布,利用公式预测键值所在的位置,快速缩小键值所在
- 在了解了JavaScript1.7的相关更新后,我们再继续关注JavaScript1.8的新特性。在W3C Group带来的JavaScri
- 我们之前一直都在使用的urlopen,这是一个特殊的opener(也就是模块帮我们构建好的)。但是基本的urlopen()方法不支持代理、c
- 文章主要描述的是SQL Server到DB2连接服务器的正确实现过程,以及对其在实际操作中所要用到的实际操作环境的描述,以下就是对SQL S
- Python 风格规范(Google)本项目并非 Google 官方项目, 而是由国内程序员凭热情创建和维护。如果你关注的是 Google
- 本文实例讲述了python每次处理一个字符的三种方法。分享给大家供大家参考。具体方法如下:a_string = "abccdea&