|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 翌翼 于 2020-9-1 23:39 编辑
- F_name = input('请输入需要打开的文件(带路径):')
- F_line = input('请输入需要显示的行数(格式如XX:XX或:XX或XX:):')
- F = open(F_name)
- (begin,end) = F_line.split(':')
- if begin == '':
- begin = 1
- if end == '':
- end = -1
- if begin == 1 and end == -1:
- prompt = '的全文'
- elif begin == 1:
- prompt = '从开始到第%s行的' % end
- elif end == -1:
- prompt = '从第%s行到末尾的' % begin
- else:
- prompt = '从第%s行到%s行的' % (begin,end)
- begin = int(begin) - 1
- end = int(end)
- lines = end - begin
- for i in range(begin):
- F.readline()
- print('该文件%s内容如下:' % prompt)
- if lines < 0: # 为什么此处输入行数“3:”还是能够正确打印呢?我的理解应该是打印全文才对(lines=-1-2=-3<0)
- print(F.read())
- else:
- for j in range(lines):
- print(F.readline)
- F.close()
复制代码
对lines < 0处的代码不是很能理解,请各路大神不吝赐教。
在执行到第25,26行的时候,文件指针已经移到了begin的位置,只不过没有print出来
|
|