Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/283.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 如何从TSV文件转换为JSON文件?_Python_Python 3.x_File - Fatal编程技术网

Python 如何从TSV文件转换为JSON文件?

Python 如何从TSV文件转换为JSON文件?,python,python-3.x,file,Python,Python 3.x,File,所以我知道这个问题可能会重复,但我只想知道并理解如何将TSV文件转换为JSON?我试着到处搜索,但我找不到线索,也无法理解代码 这不是Python代码,而是我想转换为JSON的TSV文件: 标题内容难度 week01 python语法非常简单 week02 python数据操作简单 week03 python文件和请求 week04 python类和高级概念 这是我想要作为输出的JSON文件 [{ “标题”:“第01周”, “内容”:“python语法”, “难度”:“非常容易” }, { “

所以我知道这个问题可能会重复,但我只想知道并理解如何将TSV文件转换为JSON?我试着到处搜索,但我找不到线索,也无法理解代码

这不是Python代码,而是我想转换为JSON的TSV文件:

标题内容难度
week01 python语法非常简单
week02 python数据操作简单
week03 python文件和请求
week04 python类和高级概念
这是我想要作为输出的JSON文件

[{
“标题”:“第01周”,
“内容”:“python语法”,
“难度”:“非常容易”
},
{
“标题”:“第02周”,
“内容”:“python数据操作”,
“困难”:“容易”
},
{
“标题”:“第03周”,
“内容”:“python文件和请求”,
“难度”:“中等”
},
{
“标题”:“第04周”,
“内容”:“python类和高级概念”,
“困难”:“困难”
}
]

如果您使用的是
pandas
,您可以使用带有选项
orient=“records”
的方法来获取所需的条目列表

my_data_frame.to_json(orient=“records”)

您需要的内置模块有和

要使用CSV模块读取制表符分隔的数据,请使用
分隔符=“\t”
参数:

更方便的是,CSV模块有一个DictReader,可以自动将第一行作为列键读取,并将其余行作为字典返回:

with open('file.txt') as file:
    reader = csv.DictReader(file, delimiter="\t")
    data = list(reader)
    return json.dumps(data)

JSON模块也可以直接写入文件而不是字符串。

这很有效,谢谢。但是为了得到我想要的输出,我只需要将“indent=4”作为参数放在json.dumps函数中