您好,登錄后才能下訂單哦!
本文實例為大家分享了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')
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。