Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/347.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在python中读取.txt文件_Python_Command_Line - Fatal编程技术网

在python中读取.txt文件

在python中读取.txt文件,python,command,line,Python,Command,Line,我对python中的代码有问题。我想读一个.txt文件。我使用代码: f = open('test.txt', 'r') # We need to re-open the file data = f.read() print(data) 我只想从这个.txt文件中读取第一行。我用 f = open('test.txt', 'r') # We need to re-open the file data = f.readline(1) print(data) 但我看到屏幕上只显示了行的第

我对python中的代码有问题。我想读一个.txt文件。我使用代码:

f = open('test.txt', 'r')  # We need to re-open the file
data = f.read()

print(data)

我只想从这个.txt文件中读取第一行。我用

f = open('test.txt', 'r')  # We need to re-open the file
data = f.readline(1)

print(data)
但我看到屏幕上只显示了行的第一个字母


你能帮我读懂这行的所有字母吗?(我的意思是阅读整行.txt文件)

您的第一次尝试就快到了,您应该完成以下操作:

f = open('my_file.txt', 'r')
line = f.readline()
print(line)
f.close()
读取文件的更安全方法是:

with open('my_file.txt', 'r') as f:
    print(f.readline())
两种方式都只打印第一行

您的错误是将
1
传递到
readline
,这意味着您希望读取的大小为1,这只是一个字符。请以打开(“file.txt”)的形式参考

:
打印(f.readline())
这将使用
上下文块打开文件(完成后将自动关闭文件),并读取第一行,如下所示:

f = open(“file.txt”)
print(f.readline())
f.close()
您尝试使用
f.readline(1)
将不起作用,因为该参数表示要在文件中打印多少个字符,因此它将只打印第一个字符

第二种方法:

打开(“file.txt”)作为f:
打印(f.readlines()[0])
或者您也可以执行上面的操作,这将得到一个行列表,并仅打印第一行

要阅读第五行,请使用

打开(“file.txt”)作为f:
打印(f.readlines()[4])
或:

打开(“file.txt”)作为f:
行=[]
行+=f.读行()
行+=f.读行()
行+=f.读行()
行+=f.读行()
行+=f.读行()
打印(行[-1])
-1
表示列表的最后一项

了解更多信息:

使用
打开(…)

with open("test.txt") as file:
    line = file.readline()
    print(line)
保持
f.readline()
不带参数

它将以字符串形式返回第一行,并将光标移动到第二行


下次使用
f.readline()
时,它将返回第二行并将光标移动到下一行,等等。

我尝试了这个方法,在您的建议下,它可以工作:

f = open('test.txt', 'r')
data = f.readlines()[1]

print(data)

我只想读第五行。我该怎么做?我只想读第五行。我该怎么做呢?@IvanRoma只需在文件上重复5次,如果你调用
readline
方法5次,你将得到第5行,或者
f.readlines()[4]
请留下评论,解释你为什么否决我的答案,谢谢。如果有用,你可以“接受”或验证我(或其他人)的答案,只需单击投票按钮下方的勾号即可-还请记住
f.close()
要在完成文件后关闭该文件,请在
f=open('test.txt',r')
之后查看我的答案以了解更多详细信息,然后
一行=下一行(f)