您的位置:

Python文本转CSV详解

一、Python文本转CSV前奏

CSV(Comma Separated Values),指逗号分隔值文件,是一种纯文本文件,在各类软件之间的数据交换中应用频繁。CSV的文件格式为每行一条记录,逗号(或其他分隔符)分割每个字段,不含表头,每个字段可以用双引号引起来,如下所示:
123,“xie”,“31”
456,“yuan”,“19”
789,“liu”,“23”
Python作为一种较为常用的编程语言,具有优秀的文本处理能力,下面我们就来详细介绍Python如何实现文本转CSV。

二、Python文本转CSV方法

1、从Python Int转化为String

在Python中可以使用str()方法将int类型数据转化为string类型,代码示例如下:

        num = 123
        str_num = str(num)
        print(str_num)      # '123'
    

2、Python List转化为对象

在Python中可以使用pickle库将list类型的数据转化为对象,代码示例如下:

        import pickle
        
        data = [1, 2, 3, 4]
        file = open('data.pkl', 'wb')
        pickle.dump(data, file)
        
        file = open('data.pkl', 'rb')
        data = pickle.load(file)
        print(data)        # [1, 2, 3, 4]
    

3、Python Dict转化为实体

在Python中可以使用类似JSON的格式将dict类型的数据转化为实体,代码示例如下:

        import json
        
        data = {'name': 'xie', 'age': '18', 'sex': 'male'}
        data_str = json.dumps(data)
        print(data_str)    # '{"name": "xie", "age": "18", "sex": "male"}'

        entity = json.loads(data_str)
        print(entity)      # {'name': 'xie', 'age': '18', 'sex': 'male'}
    

4、Python文本转CSV

在Python中可以使用csv库将文本文件转换为csv格式,代码示例如下:

        import csv
        
        with open('data.txt', 'r') as file_in, open('data.csv', 'w', newline='') as file_out:
            reader = csv.reader(file_in)
            writer = csv.writer(file_out)
            for row in reader:
                writer.writerow(row)
    

5、Python UTC转换

在Python中可以使用datetime库将UTC时间转换为当前时区的时间,代码示例如下:

        from datetime import datetime, timezone, timedelta
        
        d = datetime.strptime('2021-07-08T10:00:00.000Z', '%Y-%m-%dT%H:%M:%S.%fZ')
        tz_utc_8 = timezone(timedelta(hours=8))
        d = d.astimezone(tz_utc_8)
        print(d)       # 2021-07-08 18:00:00+08:00
    

6、Python JSON转Str

在Python中可以使用json库将json数据转换为字符串,代码示例如下:

        import json
        
        data = {'name': 'xie', 'age': '18', 'sex': 'male'}
        data_str = json.dumps(data)
        print(data_str)   # '{"name": "xie", "age": "18", "sex": "male"}'
    

7、Python怎么转String

在Python中字符串就是字符串,无需特别的转换方式。只需将其他类型的数据转换为字符串即可。比如使用str()函数,代码示例如下:

        num = 123
        str_num = str(num)
        print(str_num)  # '123'