您现在的位置是:网站首页>>Python>>python

Python 导出csv及读取csv文件

发布时间:2018-11-06 10:16:18作者:wangjian浏览量:664点赞量:0

    一:Python 导出csv

    Python对于csv文件的操作使用到的组件是Python自带的csv组件,这里说明在原生的Python文件中使用Python导出csv文件时,导出的csv文件是只能在此电脑上(及你的电脑就是一个服务器),Python原生的导出csv文件大多用于在本地抓取数据时,将数据导出

    1:导出csv 数据结构为字典型

    import csv
    #open函数第一个参数是导出的文件名,第二个参数是w(表示写模式),在Python2中为wb(w表示写模式 b表示文件类型),在Python3中如果使用wb的话回报(TypeError: a bytes-like object is required, not 'str')错误第三个参数设置文件编码格式是utf-8,第四个参数是去除每行数据中间的空格,如果不加上newline='',导出文件成功,但是导出的文件每行之间会有一行空格
    with open('csv.csv', "w", encoding='utf8', newline='') as outFileCsv:
        #设置csv表头
        fileheader = ['姓名', '年龄']
        outDictWriter = csv.DictWriter(outFileCsv, fileheader)
        outDictWriter.writeheader()
        #设置csv数据,这里的数据格式是字典型
        result = [{'姓名': '张三', '年龄': 12}, {'姓名': '李四', '年龄': 14}]
        outDictWriter.writerows(result)
        outFileCsv.close()

    2:导出csv 数据结构为列表型

    import csv
    #open函数第一个参数是导出的文件名,第二个参数是w(表示写模式),在Python2中为wb(w表示写模式 b表示文件类型),在Python3中如果使用wb的话回报(TypeError: a bytes-like object is required, not 'str')错误第三个参数设置文件编码格式是utf-8,第四个参数是去除每行数据中间的空格,如果不加上newline='',导出文件成功,但是导出的文件每行之间会有一行空格
    with open('ceshi.csv', 'w', encoding='utf8', newline='') as csvfile:
            writer = csv.writer(csvfile)
            #设置表头
            result = ['姓名', '年龄']
            writer.writerow(result)
            #将CsvData中的数据循环写入到csv文件中
            CsvData = [['张三','22'],['李四','44']]
            for item in CsvData:
                writer.writerow(item)

    二:读取csv文件

    import csv
    # 读取csv文件内容
    ##open函数第一个参数是导出的文件名,第二个参数是r(表示读模式),在Python2中为rb(r表示读模式 b表示文件类型),在Python3中如果使用
    #wb的话回报(TypeError: a bytes-like object is required, not 'str')错误第三个参数设置文件编码格式是utf-8
    with open("csv.csv","r",encoding="utf-8") as csvfile:
         #读取csv文件,返回的是迭代类型
         read = csv.reader(csvfile)
         for i in read:
             print(i)



0 +1