这是我自己写的,你看看行不行

def print_any_file(file_name,num1,num2):
f1 = open(file_name)
sub = f1.readlines()
length = len(sub)
f1.close()
if num1 == '' and num2 == '':
print('文件%s的全文如下:' % file_name)
for i in range(length):
print(sub[i])
else:
if num1 == '':
num2 = int(num2)
print('文件%s从开始到%d行内容如下:' % (file_name, num2))
for i in range(num2):
print(sub[i])
else:
if num2 == '':
num1 = int(num1)
print('文件%s从%d行到结束内容如下:' % (file_name, num1))
for i in range(num1,length+1):
print(sub[i-1])
else:
if num1 != 0 and num2 != 0:
if int(num2) > length:
num2 = length
num1 = int(num1)
num2 = int(num2)
print('文件%s从%d行到%d行内容如下:' % (file_name, num1,num2))
for i in range(num1,num2 + 1):
print(sub[i-1])
file_name = input('请输入要打开的文件:')
number = str(input('请输入需要显示的行数【格式如 13:21或 :21 或 21:】:'))
num = number.split(':',1)
num1 = num[0]
num2 = num[1]
print_any_file(file_name,num1,num2)