Skip to main content
 首页 » 编程设计

python之我将如何读取 n 行,其中 n 是使用 Python 的文件中的第一行

2025年05月04日17yjmyzz

我需要使用 Python 读取坐标集文件。第一行会有一个数字,n,这是需要读取的坐标集的数量。第一行之后是 n 行,其中每行包含一个坐标对。

示例(在本例中,n = 4):

n 
(x,y) 
(x,y) 
(x,y) 
(x,y) 

要注意的是文件中会有多个部分。所以第一个 n 可能是 10,有 10 组坐标,接下来的 n 可能是 20,有 20 组坐标跟着它。

截至目前,我只是分别读取坐标部分,但如果我可以读取文件中的任意数量的坐标部分,我会很高兴。

请您参考如下方法:

您可以使用 open()打开文件进行阅读,readline()逐行读取文件内容,int()将字符串转换为整数。

下面是使用这些部分的示例实现:

def read_coords(file_handle): 
    try: 
        nrecords = int(file_handle.readline()) 
    except ValueError: 
        return False 
    return [file_handle.readline() for i in range(nrecords)] 
 
coord_sets = [] 
with open("some.txt") as f: 
   coords = read_coords(f) 
   while coords != False: 
       coord_sets.append(coords) 
       coords = read_coords(f) 
 
print "coord_sets =",coord_sets