诺丶辰 发表于 2022-4-4 21:51:55

本主题需向作者支付 45 鱼币 才能浏览 购买主题

大马强 发表于 2022-4-4 21:55:35

??你这搞个付费{:10_266:}

ba21 发表于 2022-4-4 21:57:42

大马强 发表于 2022-4-4 22:04:38

想给你个大概的改正
你先好好改一改

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()

大马强 发表于 2022-4-4 22:06:11

代码还有问题
比如输入 3:5 它是从第四行打印,按理说应该要打印 3 4 5行的
第二个是两个if的判断

诺丶辰 发表于 2022-4-4 22:08:24

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()

大马强 发表于 2022-4-4 22:30:22

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]
查看完整版本: 文件打开指定行