Python中ereader应用程序中的下一个和上一个逻辑?

2024-05-19 01:38:57 发布

您现在位置:Python中文网/ 问答频道 /正文

文件名为:page1.txt、page2.txt、page3.txt、page4.txt。这些是所有的页面。询问用户输入,如果用户按1,则显示第1页。当用户按页码时,我可以显示结果:

def read(argu):
    argu = open(argu)
    y = [x for x in argu]
    print y


inp = raw_input('Say: ')

if inp=='1':
    read('page1.txt')

if inp=='2':
    read('page2.txt')

if inp=='3':
    read('page3.txt')

我被困在下一个和前一个。如果用户在第2页,如果他按next,我需要显示第3页,依此类推。我该怎么做?提前谢谢。在


Tags: 用户txtreadif文件名def页面open
1条回答
网友
1楼 · 发布于 2024-05-19 01:38:57

为了从一个页面移动到另一个页面,您需要使用一个变量来显示用户当前正在阅读的页面。“上一页”和“下一页”将更新页码并显示相应的页面:

file = ['page1.txt', 'page2.txt', 'page3.txt', 'page4.txt']
pagecount = len(file)
page = 1                    # initialize to a default page

if inp == '1':
    page = 1
    read(file[page-1])      # pages are 1-4, subscripts are 0-3

# ... pages 2-4 go here 

elif inp == '+':              # whatever key you use for Next
    page = min(page+1, pagecount)    # don't go beyond last page
    read(file[page-1])

elif inp == '-':              # switch statements use "if .. elif .. elif .. else"
    page = max(page-1, 1)
    read(file[page-1])

当您使该版本正常工作后,您可以通过从页码中构造文件名而不是将文件名存储在列表中来将其泛化为允许任意数量的页面。你只需要一个“read”作为你的输入循环,因为每个键都读取一个页面,你可以把它从每个单独的键中分离出来。在

相关问题 更多 >

    热门问题