Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/293.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如何将每一行写入文件_Python - Fatal编程技术网

python如何将每一行写入文件

python如何将每一行写入文件,python,Python,我有一个JSON文件,它有5行长。我想将每一行写入一个单独的文件,即将line1写入file1,line2写入file2等 现在,我试图在一个文件中写入文件,但数据是一行一乱的,在写入文件的每个键和值之前都有一个奇怪的“u” 导入json 将open(“test1.json”)作为f: 以open(“1.json”,“w”)作为o: 行=f.读行() 对于行中的行: y=json.loads(第行) 打印(y) json.dump(y,o) 更新:添加@tripleee建议 fp = open

我有一个JSON文件,它有5行长。我想将每一行写入一个单独的文件,即将
line1
写入
file1
line2
写入
file2

现在,我试图在一个文件中写入文件,但数据是一行一乱的,在写入文件的每个键和值之前都有一个奇怪的“u”

导入json
将open(“test1.json”)作为f:
以open(“1.json”,“w”)作为o:
行=f.读行()
对于行中的行:
y=json.loads(第行)
打印(y)
json.dump(y,o)
更新:添加@tripleee建议

fp = open("test1.json",'r')
for i, line in enumerate(fp):
    with open(str(i)+".json","w") as o:
        y =  json.loads(line)
        print(y)
        o.writelines(y)
代码中的所有内容看起来都很好,除了这一行
,将open(“1.json”,“w”)作为o:
更改此行以为每行创建新文件

逻辑是-对行进行计数,使用linecount.json创建文件并转储json

更新:添加@tripleee建议

fp = open("test1.json",'r')
for i, line in enumerate(fp):
    with open(str(i)+".json","w") as o:
        y =  json.loads(line)
        print(y)
        o.writelines(y)
代码中的所有内容看起来都很好,除了这一行
,将open(“1.json”,“w”)作为o:
更改此行以为每行创建新文件


逻辑是-计算行数,使用linecount.json创建文件并转储json,最有效的方法是:

以open('test1.json').readlines()作为json_数据:35; readlines返回一个列表,其中包含作为单独项目的每一行
对于范围内的i(len(json_数据)):#for循环允许使用任意数量的行
file=open(f'{str(i+1)}.json','w')#与'{str(i+1)}.json'.format()或str(i+1)+'.json'相同
write(json_数据[i])
file.close()文件
#打印(json.loads(json_data[i])#如果要打印每行的内容,请取消注释
这允许您处理任意数量的行—为您动态命名输出文件

字符串前面的
u
(如
u'string'
)表示unicode字符串。这是python语言的一个不推荐的包含项-default字符串类型为unicode。为了与python 2兼容,现在仅在python 3中使用


(来源:)

最有效的方法是:

以open('test1.json').readlines()作为json_数据:35; readlines返回一个列表,其中包含作为单独项目的每一行
对于范围内的i(len(json_数据)):#for循环允许使用任意数量的行
file=open(f'{str(i+1)}.json','w')#与'{str(i+1)}.json'.format()或str(i+1)+'.json'相同
write(json_数据[i])
file.close()文件
#打印(json.loads(json_data[i])#如果要打印每行的内容,请取消注释
这允许您处理任意数量的行—为您动态命名输出文件

字符串前面的
u
(如
u'string'
)表示unicode字符串。这是python语言的一个不推荐的包含项-default字符串类型为unicode。为了与python 2兼容,现在仅在python 3中使用


(来源:)

正确编写的
json
文件通常有一行,您所做的非常奇怪。正确编写的
json
文件通常有一行,您所做的非常奇怪。