你先好好改一改
def my_file():
file1 = str(input('请输入要打开的文件:'))
file2 = input('请输入需要打印的行数')# 一个问题
f1 = open(file1, 'r', encoding="utf-8")
f2 = file2.split(':')# 错了 不是strip
a1 = f1.readlines()
if file2[-1] == ':':
a2 = int(f2)
print(f'{file1}从{f2}行到末尾的内容如下:')
print(*a1)
if file2 == ':':# 你这两个有区别吗
a2 = int(f2[-1])
print(f'{file1}开始从到{a2}行的内容如下:')
print(*a1[:a2])
if file2 == ':':# 你这两个有区别吗
print(f'{file2}的全文内容如下')
print(*a1[:])
else:
a2 = int(f2)
c2 = int(f2)
print(f'{file1}从{f2}行到{f2}的内容如下')
print(*a1)
my_file() 代码还有问题
比如输入 3:5 它是从第四行打印,按理说应该要打印 3 4 5行的
第二个是两个if的判断 def my_file():
file1=str(input('请输入要打开的文件:'))
file2=str(input('请输入需要打印的行数'))
f1=open(file1,'r')
f2=file2.strip(':')
a1=f1.readlines()
if file2[:]==':':
print(f'{file1}的全文内容如下')
print(a1[:])
elif file2[-1]==':':
a2=int(f2)
print(f'{file1}从{f2}行到末尾的内容如下:')
print(a1)
elif file2==':':
a2=int(f2[-1])
print(f'{file1}开始从到{a2}行的内容如下:')
print(a1[:a2])
else:
a2=int(f2)
c2=int(f2[-1])
print(f'{file1}从{f2}行到{f2[-1]}行的内容如下')
print(a1)
f1.close()
my_file()
def my_file():
file1 = str(input('请输入要打开的文件:'))
file2 = input('请输入需要打印的行数')# 一个问题
f1 = open(file1, 'r', encoding="utf-8")
f2 = file2.split(':')# 错了 不是strip
a1 = f1.readlines()
if len(file2) == 3:
a2 = int(f2)
c2 = int(f2)
print(f'{file1}从{f2}行到{f2}的内容如下')
print(*a1)
elif len(file2) == 2:
if file2 == ':':
a2 = int(f2[-1])
print(f'{file1}开始从到{a2}行的内容如下:')
print(*a1[:a2+1])
else:
a2 = int(f2)
print(f'{file1}从{f2}行到末尾的内容如下:')
print(*a1)
else:
print(f'{file2}的全文内容如下')
print(*a1[:])
f1.close()
my_file()
页:
[1]