在Python 3上打开文件

在Python 3上打开文件,python,Python,我尝试使用以下代码在python上打开一个文件: fileName=input('Please enter the file name: ') file=open(fileName,'r') 我被要求输入文件名grid.txt,我输入,但没有显示,我做错了什么,如果是,我做错了什么,解决方案是什么 谢谢。这里有一些代码,可以满足您的需求: fileName=input('Please enter the file name: ') f=open(fileName,'r') print(f.re

我尝试使用以下代码在python上打开一个文件:

fileName=input('Please enter the file name: ')
file=open(fileName,'r')
我被要求输入文件名grid.txt,我输入,但没有显示,我做错了什么,如果是,我做错了什么,解决方案是什么


谢谢。

这里有一些代码,可以满足您的需求:

fileName=input('Please enter the file name: ')
f=open(fileName,'r')
print(f.read())
f.close()

下面是一些代码,用于实现您所需的功能:

fileName=input('Please enter the file name: ')
f=open(fileName,'r')
print(f.read())
f.close()

您已成功创建文件对象,但您仅声明它存在

您只需在之后打印,下面是一个示例:

f = open('workfile', 'r')
print f.read()

或者,每次调用下一行时,
f.readline()
都会读取下一行,按照惯例,读取/写入文件后,应调用
f.close()
关闭该文件。

您已成功创建文件对象,但您仅声明它存在

您只需在之后打印,下面是一个示例:

f = open('workfile', 'r')
print f.read()

或者,
f.readline()
将在每次调用下一行时读取下一行,按照惯例,在完成文件的读/写操作后,应调用
f.close()
以关闭该文件。

您也可以将

fileName = input('Please enter the file name: ')
with open(fileName, 'r') as fd:
    for line in fd:
        print(line.strip())

这将在完成后关闭文件

您也可以将

fileName = input('Please enter the file name: ')
with open(fileName, 'r') as fd:
    for line in fd:
        print(line.strip())
这将在文件完成后关闭该文件。

file.open()
不会在文本编辑器中打开文件(我假设您认为它会这样做)。 相反,它准备通过python访问数据

正如下面的评论中所述,您的问题已经存在:您必须对该文件进行处理

尝试:

请阅读open()的文档。 另外,使用
with open()
语句将提高代码的可读性,并为您处理文件的关闭。 .

file.open()
不会在文本编辑器中打开文件(我假设您认为它会这样做)。 相反,它准备通过python访问数据

正如下面的评论中所述,您的问题已经存在:您必须对该文件进行处理

尝试:

请阅读open()的文档。 另外,使用
with open()
语句将提高代码的可读性,并为您处理文件的关闭。
.

添加以下打印stmt以查看文件的详细信息

打开(文件名)作为文件:


添加以下打印stmt以查看有关文件的详细信息

打开(文件名)作为文件:


是的,你没有添加任何打印STMT。。而且也不要使用
文件
作为变量名。是的,你必须对打开的文件做些什么,否则什么也不会发生;-)我还建议在处理文件时使用with语句。否则,您(至少是Python2.x)必须在处理该文件后手动关闭该文件。这看起来像是用open(…)在_file:do_sth(…)@AvinashRaj:Hmm…在python3中并不重要。但是,我建议使用
f
inf
outf
,等等。如果什么都没发生,那就好了,因为这没有任何作用<代码>打开仅创建用于进一步处理的文件对象,不在窗口中“打开”文件或类似的内容,如果这是您所期望的..是的,您没有添加任何打印STMT。。而且也不要使用
文件
作为变量名。是的,你必须对打开的文件做些什么,否则什么也不会发生;-)我还建议在处理文件时使用with语句。否则,您(至少是Python2.x)必须在处理该文件后手动关闭该文件。这看起来像是用open(…)在_file:do_sth(…)@AvinashRaj:Hmm…在python3中并不重要。但是,我建议使用
f
inf
outf
,等等。如果什么都没发生,那就好了,因为这没有任何作用
open
只创建一个用于进一步处理的文件对象,不在窗口中“打开”文件或类似的东西,如果这是您所期望的。请注意,读入的行包括尾随的换行符,而print会添加一个换行符;这会把你的文件打印成双倍行距。对了,我忘了。添加了
.strip()
注意,读入的行包括尾随的换行符,而打印添加了一个换行符;这会把你的文件打印成双倍行距。对了,我忘了。添加了
.strip()