gaoxiuhua520 发表于 2022-9-20 17:23:38

TypeError:不支持%的操作数类型:“NoneType”和“tuple”

def read_file_part(file_name,file_num):
    if file_num.strip()==":":
      start ="1"
      end ="-1"

    (start,end) = file_num.split(":")

    if start =="":
      start ="1"
    if end =="":
      end ="-1"

    if start =="1" and end =="-1":
      tips ="全文"
    elif start =="1":
      tips ="从开始到%s" % end
    elif end =="-1":
      tips ="从%s到结束" % start
    else:
      tips ="从%s行到%s行" % (start,end)

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

    start =int(start)-1
    end =int(end)
    lines =end -start

    f= open(file_name,encoding="UTF-8")
    for i in range(start):
      f.readlines()

    if lines <0:
      print(f.read())
    else:
      for j in lines:
            print(f.readlines())

    f.close()

file_name =input("请输入你的文件名:")
file_num =input("请输入你要显示的行数【格式例如12:23, :23,12: ,或 : 】:")
read_file_part(file_name,file_num)##############TypeError: unsupported operand type(s) for %: 'NoneType' and 'tuple'(TypeError:不支持%的操作数类型:“NoneType”和“tuple”)
      

gaoxiuhua520 发表于 2022-9-20 17:24:12

问一下哪里报错了,应该是% 哪里~~~~~~~~~~

Twilight6 发表于 2022-9-20 17:32:31

gaoxiuhua520 发表于 2022-9-20 17:24
问一下哪里报错了,应该是% 哪里~~~~~~~~~~



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

这行代码 % 格式化写到 print 函数外去了,改成:

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




gaoxiuhua520 发表于 2022-9-20 20:49:53

Twilight6 发表于 2022-9-20 17:32
print("\n文件%s%s的内容如下:\n") % (file_name,tips)

这行代码 % 格式化写到 print 函数外去 ...

谢谢大佬
页: [1]
查看完整版本: TypeError:不支持%的操作数类型:“NoneType”和“tuple”