在本教程中,我们将了解如何使用Python编程语言将CSV格式的文件转换为JSON格式的文件。

但在开始之前,让我们了解一下CSV和JSON文件的含义。

什么是CSV文件?

CSV文件,全称为逗号分隔值文件,是一种存储数据列表的纯文本文件。CSV文件通常用于在各种应用程序之间交换数据。例如,联系人管理器和数据库通常提供CSV文件支持。

这些CSV文件也被称为逗号分隔文件字符分隔值文件。这些文件主要使用逗号字符来分隔或分开数据。但有时也使用其他字符,比如分号。预期的目的是将复杂的数据从一个程序导出到CSV格式的文件,然后从CSV文件中导入数据到另一个程序中。

逗号分隔值(CSV)文件具有相当基本的结构,包含一些数据,用逗号分隔开。CSV文件的设计方式使它们能够轻松地导入和导出其他应用程序的数据。生成的数据可以轻松被人类阅读,并且可以使用文本编辑器(如记事本)或电子表格应用程序(如Microsoft Excel或Google Sheets)查看。

什么是JSON文件?

JSON文件,也称为JavaScript对象表示法文件,是一种允许用户以称为JSON格式的标准数据交换格式存储基本对象和数据结构的文件。JSON文件通常用于在基于Web的应用程序和服务器之间传输数据。JSON文件是轻量级的文本文件,人类可以轻松阅读,我们可以使用文本编辑器(如记事本)来编辑这些文件。

JSON格式实际上基于JavaScript的子集。但它被称为一种与语言无关的格式,并受到各种编程API的支持。JSON通常用于Ajax Web应用程序编程。与过去几年中作为XML替代品的增长相比,JSON的流行度逐渐增加。

尽管有各种程序使用JSON进行数据交换,但它们可能不会将JSON格式文件保存在硬盘上。数据交换发生在通过互联网连接的计算机之间。然而,一些程序允许我们保存JSON格式文件。例如,Google+使用JSON文件来保存个人资料数据。一旦我们登录,我们可以选择“数据解放”页面,然后选择“下载您的个人资料数据”选项。

由于JSON文件是纯文本文件,允许我们在任何文本编辑器中打开它们,例如Windows的Microsoft记事本,Mac的Apple TextEdit,Linux的Vim以及GitHub Atom,我们还可以使用Web浏览器如Google Chrome和Mozilla Firefox来打开JSON格式文件。

现在让我们开始将CSV文件转换为JSON文件。

将CSV文件转换为JSON文件

我们将使用以下简单的Python程序将CSV文件转换为JSON文件。

我们将使用以下CSV文件。

文件:mydatalist.csv

211.png

程序:

# importing the required libraries  
import csv  
import json  
  
# defining the function to convert CSV file to JSON file  
def convjson(csvFilename, jsonFilename):  
      
    # creating a dictionary  
    mydata = {}  
      
    # reading the data from CSV file  
    with open(csvFilename, encoding = 'utf-8') as csvfile:  
        csvRead = csv.DictReader(csvfile)  
          
        # Converting rows into dictionary and adding it to data  
        for rows in csvRead:  
              
            mykey = rows['S. No.']  
            mydata[mykey] = rows  
  
    # dumping the data  
    with open(jsonFilename, 'w', encoding = 'utf-8') as jsonfile:  
        jsonfile.write(json.dumps(mydata, indent = 4))  
  
# filenames       
csvFilename = r'mydatalist.csv'  
jsonFilename = r'mydatalist.json'  
  
# Calling the convjson function  
convjson(csvFilename, jsonFilename)  

输出:

文件:mydatalist.json

{
    "1": {
        "S. No.": "1",
        "Name": "Dave",
        "Age": "17"
    },
    "2": {
        "S. No.": "2",
        "Name": "Albus",
        "Age": "16"
    },
    "3": {
        "S. No.": "3",
        "Name": "John",
        "Age": "19"
    },
    "4": {
        "S. No.": "4",
        "Name": "Tom",
        "Age": "22"
    },
    "5": {
        "S. No.": "5",
        "Name": "Harry",
        "Age": "19"
    },
    "6": {
        "S. No.": "6",
        "Name": "Ron",
        "Age": "20"
    },
    "7": {
        "S. No.": "7",
        "Name": "William",
        "Age": "13"
    },
    "8": {
        "S. No.": "8",
        "Name": "George",
        "Age": "15"
    },
    "9": {
        "S. No.": "9",
        "Name": "Mark",
        "Age": "11"
    },
    "10": {
        "S. No.": "10",
        "Name": "Max",
        "Age": "18"
    }
}
Expla

解释:

在上面的示例中,我们导入了csvjson库,并定义了一个名为convjson()的函数。然后,我们创建了一个空字典,并从CSV文件中读取数据。我们将CSV中的行转换为字典并将其添加到数据中。然后,我们将数据转储到JSON文件中。最后,我们定义了文件路径名称的变量,并调用convjson()函数来执行转换。结果,当我们执行程序时,CSV文件成功转换为JSON文件。

标签: Tkinter教程, Tkinter安装, Tkinter库, Tkinter入门, Tkinter学习, Tkinter入门教程, Tkinter, Tkinter进阶, Tkinter指南, Tkinter学习指南, Tkinter进阶教程, Tkinter编程