1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52
| import math
students = [ {'name': '刘备', 'gender': '男', 'age': 35}, {'name': '关羽', 'gender': '男', 'age': 30}, {'name': '张飞', 'gender': '男', 'age': 32}, {'name': '赵云', 'gender': '男', 'age': 30}, {'name': '黄忠', 'gender': '男', 'age': 32}, {'name': '马超', 'gender': '男', 'age': 31}, {'name': '吕布', 'gender': '男', 'age': 35}, {'name': '典韦', 'gender': '男', 'age': 30}, {'name': '孙权', 'gender': '男', 'age': 32}, {'name': '周瑜', 'gender': '男', 'age': 30}, {'name': '曹操', 'gender': '男', 'age': 30}, ]
current_page = 1 page_size = 5 total = len(students) page_count = math.ceil(total / page_size)
def clear_screen(): print("\033c",end="")
def student_list(page): clear_screen()
start = (page - 1) * page_size end = start + page_size
print('='*50) print('学生列表'.center(50)) print('-'*50) print('序号\t姓名\t性别\t年龄') for index,student in enumerate(students[start:end],start=start+1): print(f'{index}\t{student["name"]}\t{student["gender"]}\t{student["age"]}') print('='*50) print(f'第{page}页,共{page_count}页,{page_size}条/页,共{total}条数据')
while True: student_list(current_page) user_input = input('输入数字跳转到指定页,输入q退出:') if user_input.lower() == 'q': clear_screen() print("程序已退出!!!") break
new_page = int(user_input) if 1 <= new_page <= page_count: current_page = new_page else: print("输入的页码超出范围!")
|