从文件中获取python中的字符输入?
在python中,假设我有data.txt文件。它有6行数据。我想通过遍历每个字符并找出文件中“\n”的数目来计算计划执行的行数。如何从文件中输入一个字符?Readline占据了整个线路 您可以使用从文件中获取python中的字符输入?,python,file,Python,File,在python中,假设我有data.txt文件。它有6行数据。我想通过遍历每个字符并找出文件中“\n”的数目来计算计划执行的行数。如何从文件中输入一个字符?Readline占据了整个线路 您可以使用read(1)读取单个字节帮助(文件)说明: read(size)->最多读取大小字节,以字符串形式返回 如果size参数为负数或省略,则读取直到达到EOF。 请注意,在非阻塞模式下,数据量小于请求的数据量 即使未给出大小参数,也可能返回 请注意,一次读取一个字节的文件是非常不“Pythonic”的。
read(1)
读取单个字节<代码>帮助(文件)说明:
read(
size)
->最多读取大小字节,以字符串形式返回
如果size参数为负数或省略,则读取直到达到EOF。
请注意,在非阻塞模式下,数据量小于请求的数据量
即使未给出大小参数,也可能返回
请注意,一次读取一个字节的文件是非常不“Pythonic”的。这是C课程中的标准,但是Python可以用更少的代码做更多的工作。例如,您可以在一行代码中将整个文件读入数组:
lines = f.readlines()
然后,您可以通过简单的lines[lineNumber]
查找按行号进行访问
或者,如果不想一次将整个文件存储在内存中,可以逐行迭代:
for line in f:
# Do whatever you want.
这更具可读性和习惯用法。您可以使用read(1)
读取单个字节<代码>帮助(文件)说明:
read(
size)
->最多读取大小字节,以字符串形式返回
如果size参数为负数或省略,则读取直到达到EOF。
请注意,在非阻塞模式下,数据量小于请求的数据量
即使未给出大小参数,也可能返回
请注意,一次读取一个字节的文件是非常不“Pythonic”的。这是C课程中的标准,但是Python可以用更少的代码做更多的工作。例如,您可以在一行代码中将整个文件读入数组:
lines = f.readlines()
然后,您可以通过简单的lines[lineNumber]
查找按行号进行访问
或者,如果不想一次将整个文件存储在内存中,可以逐行迭代:
for line in f:
# Do whatever you want.
这更具可读性和习惯性。对您来说,最简单的答案似乎是:
for line in file:
lines += 1
# do whatever else you need to do for each line
或者显式使用
readline()
的等效构造。我不确定当您在上面说readline()
正确地阅读了每一行的全部内容时,您为什么要查看每一个字符。似乎最简单的答案是:
for line in file:
lines += 1
# do whatever else you need to do for each line
或者显式使用
readline()
的等效构造。我不确定当您在上面说readline()
正确地读取了每一行的全部内容时,您为什么要查看每一个字符。我认为您正在寻找的方法是readlines
,如中所示
lines = open("inputfilex.txt", "r").readlines()
这将为您提供文件中每一行的列表。要了解有多少行,您只需执行以下操作:
len(lines)
然后使用索引访问它,如
行[3]
或行[-1]
,就像任何普通Python列表一样。我认为您正在寻找的方法是readlines
,如
lines = open("inputfilex.txt", "r").readlines()
这将为您提供文件中每一行的列表。要了解有多少行,您只需执行以下操作:
len(lines)
然后使用索引访问它,如
行[3]
或行[-1]
,就像任何普通Python列表一样。要根据文件行访问文件,请列出文件行
with open('myfile') as f:
lines = list(f)
然后只需访问行[3]
即可获得第四行,以此类推。(请注意,这不会删除换行符。)
也可以使用。要根据文件的行访问文件,请列出文件的行
with open('myfile') as f:
lines = list(f)
然后只需访问行[3]
即可获得第四行,以此类推。(请注意,这不会删除换行符。)
也可以使用。假设我要迭代到文件中的第i行。我将如何使用readline。。你是说我放置一个循环并多次执行readline()吗?假设我要迭代到文件中的第i行。我将如何使用readline。。你是说我要放一个循环,并多次执行readline()吗?