美文网首页
Python中对csv文件的操作 2018-10-11

Python中对csv文件的操作 2018-10-11

作者: Lea0423 | 来源:发表于2018-10-11 22:46 被阅读0次

    声明:此文章仅供个人工作学习时复习查看,可能对其他人并无用处,望见谅

    关于python对于csv文件的操作,其内置的csv模块提供了有效便捷的操作方法。

    1. 首先是普通的读写方式

    1. 读取文件csv.reader(csvfile, dialect='excel', **fmtparams)
    # 读取csv文件
    import csv
    
    with open('test_.csv', 'r') as f:
        reader = csv.reader(f)
        for row in reader:
           print(row[0]) #输出每行记录的编号
    
    2. 写入文件csv.writer(csvfile, dialect='excel', **fmtparams)
    # 读取csv文件
    import csv
    
    with open('test_.csv', 'w', newline='') as f: #不设置newline,写入的每一行数据后面都有一个空行
    # 如果是以二进制的形式写入不存在空行问题
        writer = csv.writer(f)
        names = ['lea', 'tom', 'lucy', 'troye']
        writer.writerow(['number', 'name']) # csv文件的每一行以列表的形式传入
        for number in range(1, 5):
            writer.writerow([number, names[number-1]]) 
    # 或者可以多行同时写入
        data = [[1, 'lea'],
                [2, 'rom'],
                [3, 'lucy'],
                [4, 'troye'],
    ]
        writer.writerows
    

    2. 其次是字典形式的读写方式

    1.读取文件 csv.DictReader('filename')
    >>> import csv
    >>> with open('test_.csv') as f:
    ...     reader = csv.DictReader(f)
    ...     for row in reader:
    ...         print(row['name'])
    ...
    lea
    tom
    ......
    
    2.写入文件 csv.DictWriter('filename', fieldnames=fieldnames)
    import csv
    with open('test_.csv', 'w') as f:
        headers = ['number', 'name']
        writer = csv.DictWriter(f, headers)
    
        writer.writeheader()
        names = ['lea', 'tom', 'lucy', 'troye']
        for number in range(1, 5):
            writer.writerow({'number':number, 'name':names[number-1]}) 
        # 同样的,可以将多条数据用列表打包后同时传入
        data = [{'number': 5, 'name':'lea'},
                {'number': 6, 'name':'tom'},
                {'number': 7, 'name':'lucy'},
                {'number': 8, 'name':'troye'},
    ]
        writer.writerows(data)
    

    先到这里,以后碰到有用的部分再添加更新

    相关文章

      网友评论

          本文标题:Python中对csv文件的操作 2018-10-11

          本文链接:https://www.haomeiwen.com/subject/hayiaftx.html