Python - 文件没有写入所有数据

Python - file does not write all of the data

我有 JSON 数据,我正在通过 API 提取数据。

这是我的代码

# list of each api url to use
link =[]
#for every id in the accounts , create a new url link into the link list
for id in accounts:
    link.append('https://example.ie:0000/v123/accounts/'+id+'/users')


accountReq = []
for i in link:
    accountReq.append(requests.get(i, headers=headers).json())


with open('masterSheet.txt', 'x') as f:
    for each in accountReq:
        account = each['data']
        for data in account:
         list=(data['username']+" "+" ",data['first_name'],data['last_name'])
        f.write(str(list)+"\n")

这样拉取数据没问题。 如果我这样做

print(data['username']+" "+" ",data['first_name'],data['last_name'])

我得到了所有数据,大约 500 行。

但是我遇到的问题是当我尝试写入我的文件时,它写入大约 8 行数据然后停止运行没有错误。

我假设它是由于数据大小。如何解决未将所有数据打印到 .txt 文件的问题??

您是否尝试将每个数据点写入文件?您的 write 函数在嵌套的 for 循环之外,因此您实际上只是将您创建的最后一个 list 变量写入文件。 如果您打算将每个数据点写入文件,则应将 f.write() 移动到 for 循环下。

for data in account:
    list=(data['username']+" "+" ",data['first_name'],data['last_name'])
    f.write(str(list)+"\n")