鱼C论坛

 找回密码
 立即注册
查看: 1921|回复: 7

[已解决]python 零基础学习作业题求解

[复制链接]
发表于 2020-8-7 17:51:50 | 显示全部楼层
这样试试:

  1. def file_display(file_name, line_num):
  2.     line_num = line_num.strip()
  3.     (begin, end) = line_num.split(":")

  4.     if begin == "":
  5.         begin = "1"
  6.     if end == "":
  7.         end = "-1"

  8.     if begin == "1" and end == "-1":
  9.         promt = "全文"
  10.     elif begin == "1":
  11.         prompt = "从开始到第%s行" % end
  12.     elif end == "-1":
  13.         prompt = "从第%s行到结束" % begin
  14.     else:
  15.         prompt = "从第%s行到第%s行" % (begin, end)

  16.     print("\n文件%s%s的内容如下:\n" % (file_name, prompt))

  17.     file = open("F:/record.txt")
  18.     begin = int(begin) - 1
  19.     # begin = int(begin)
  20.     end = int(end)  # 把字符转换成数字类型
  21.     lines = end - begin

  22.     for i in range(begin):
  23.         file.readline()  # 此时指针指向了第begin行

  24.     if lines < 0:
  25.         print(file.read())  # read是读取剩余所有字符
  26.     else:
  27.         for j in range(lines):
  28.             print(file.readline(), end=" ")  # readline是只读取一行

  29.     file.close()


  30. # file_name = "F:/record.txt"  
  31. # line_num = ":"
  32. file_name = input(r'请输入要打开的文件(C:\\test.txt):')
  33. line_num = input('请输入需要显示的行数【格式如 13:21 或 :21 或 21: 或 : 】:')
  34. file_display(file_name, line_num)
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-8-7 18:01:53 | 显示全部楼层    本楼为最佳答案   
Bonnie_9999 发表于 2020-8-7 18:00
有东西啊,begin,end不是赋值了吗?

看看我那段代码行不行 https://fishc.com.cn/forum.php?m ... 054&pid=4893240
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2026-4-2 02:59

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表