python DAY_13(1) csv文件的读写,json操作

学习内容:
csv文件的读取和写入
json操作
Tips:
我们即将操作的csv文件是从sqlsever中导入的其中一个列表(导入方式不再赘述)
或者我们创建一个TXT,写入内容,改成CSV结尾

重点:
读取方式有三种,直接读取,namedtuple读取,dict字典表读取
1)直接读取

import csv
def csv_read():
with open("文件名.csv",encoding="utf-8") as f:
    reader=csv.reader(f)
    headers=next(reader)
    print(headers)
    for row in reader:
    print(row)
if __name__=="__main__"
csv_read()    

csv文件本身是一个可迭代对象
按列输出csv的文本内容
2)namedtuple读取

import csv
import collections#from collections import namedtulpe
def csv_read_namedtuple():
with open("文件名.csv",encoding="utf-8") as f:
    reader=csv.reader(f)
    headers=next(reader)
    row=namedtuple("row",headers)
    for r in reader:
    row=Row(*r)
    print(row)
if __name__=="__main__"
csv_read_namedtuple()    

3)字典表读取

import csv
def csv_read_dict():
with open("文件名.csv",encoding="utf-8") as f:
    reader=csv.DictReader(f)
    for row in reader:
    print(row)
if __name__=="__main__"
csv_read_dict()    

写入方法
1)直接写入

import csv


def write_csv():
    headers = ["编号", "课程", "名字"]  # 文件的关键属性
    rows = [
        (1, "python", "tom"),
        (2, "c#", "jerry"),
        (3, "java", "wxj"),
        (4, "c++", "zzh"),
        (5, ".NET", "ljy"),

    ]
    with open("deeplearning_courses.csv", "w", encoding="utf-8", newline="")  as f:
        writer = csv.writer(f)  # 创建写入器writer
        writer.writerow(headers)  # 写属性(一行)
        writer.writerows(rows)  # 写内容(多行)


if __name__ == '__main__':
    write_csv()

结果如下

在这里插入图片描述
可以通过读取操作进行读取

2)字典表写入

def write_csv_dict():
    headers = ["num", "name", "course"]
    rows = (
        {"num": 1, "name": "jerry", "course": "java"},
        {"num": 1, "name": "tom", "course": "python"},
        dict(num=3,name="summer",course="deeplearning")
    )
    with open("learning_courses.csv", "w", encoding="utf-8", newline="") as f:
        writer = csv.DictWriter(f, headers)  # 默认将自己定义的headers作为属性
        writer.writeheader()
        writer.writerows(rows)#writerows不是writerow缺少一个s,用法就变了


if __name__ == '__main__':
    write_csv_dict()

json操作
1) 写操作
json也是python的一个模块,也需要导入

import json


def json_data():
    data = {
        "ID": 1,
        "名字": "汤姆",
        "course": "python"
    }
    print(data)
    print(" _ " * 20)
    json_1 = json.dumps(data)#dumps转换成字符串!
    print(json_1)
    json_2 = json.loads(json_1)
    print(" _ " * 20)
    print(json_2)
if __name__ == '__main__':
    json_data()

dump操作非字符串,在下面写入文件会用
基本操作,结果如下

在这里插入图片描述

扫描二维码关注公众号,回复: 8877440 查看本文章

2) 写入json格式文件

def json_file():
    data = {
        "ID": 1,
        "名字": "汤姆",
        "course": "python"
    }
    with open("json_first_try.json","w",encoding="utf8") as f:
     json.dump(data,f)#注意用法,这里是dump,参数也与之前有差异
if __name__ == '__main__':
    json_file()

这样就写入了
结果如下,

在这里插入图片描述
生成的文件就可以放到网上当作一个接口了
3)读json文件

def json_read():
    with open("json_first_try.json", "r", encoding="utf8") as f:
        data = json.load(f)
        print(data)


if __name__ == '__main__':
    json_read()

结果如下
在这里插入图片描述

发布了33 篇原创文章 · 获赞 0 · 访问量 693

猜你喜欢

转载自blog.csdn.net/soulproficiency/article/details/103994643