缓缓归来 发表于 2020-7-12 16:38:48

代码问题

f=input('请输入要打开的文件(C:\\rrr1.txt):')
temp=int(input("请输入需要显示该文件前几行:"))
print("文件",f,"的前",temp,"行的内容如下:")
count=1
for each_line in f:
    while count<=temp:
      print(each_line)
      count+=1

代码的功能就是显示文件的前几行,想请问一下大家,为什么我不管输入哪个文件,打印出来的内容都是“C”啊,求指教,谢谢

Twilight6 发表于 2020-7-12 16:41:27


改成这样,你都没打开文件对象呢:

f=input('请输入要打开的文件(C:\\rrr1.txt):')
f = open(f)
temp=int(input("请输入需要显示该文件前几行:"))
print("文件",f,"的前",temp,"行的内容如下:")
count=1
for each_line in f:
    if count<=temp:
      print(each_line)
      count+=1
    else:
      break

sunrise085 发表于 2020-7-12 16:42:04

你没有用open打开文件啊
f并不是打开的文件,而是你输入的字符串

缓缓归来 发表于 2020-7-12 18:17:57

Twilight6 发表于 2020-7-12 16:41
改成这样,你都没打开文件对象呢:

多谢指教,不过我改之后,又出现FileNotFoundError错误,但是文件确实是存在的,请问这是为什么啊?

Twilight6 发表于 2020-7-12 18:18:47

缓缓归来 发表于 2020-7-12 18:17
多谢指教,不过我改之后,又出现FileNotFoundError错误,但是文件确实是存在的,请问这是为什么啊?

路径错误呗 你打开文件夹去复制路径,或者你忘记加文件后缀?

缓缓归来 发表于 2020-7-12 18:31:15

Twilight6 发表于 2020-7-12 18:18
路径错误呗 你打开文件夹去复制路径,或者你忘记加文件后缀?

已解决,非常感谢

缓缓归来 发表于 2020-7-12 18:32:12

sunrise085 发表于 2020-7-12 16:42
你没有用open打开文件啊
f并不是打开的文件,而是你输入的字符串

谢谢
页: [1]
查看完整版本: 代码问题