欢迎访问 生活随笔!

尊龙游戏旗舰厅官网

当前位置: 尊龙游戏旗舰厅官网 > 编程语言 > >内容正文

python

python中csv模块读写文件 -尊龙游戏旗舰厅官网

发布时间:2025/1/21 15 豆豆
尊龙游戏旗舰厅官网 收集整理的这篇文章主要介绍了 python中csv模块读写文件 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

一、csv模块读文件

1. csv.reader–可迭代对象

通过索引获取文档内容

def csv_read():file = open('./txt/names.csv','r')reader = csv.reader(file)head = next(reader)print(head)for line in reader:print('{}:{} -- {}:{}'.format(head[0],line[0],head[1],line[1]))

输出

['first_name', 'last_name'] first_name:wonderful -- last_name:spam first_name:lovely -- last_name:spam first_name:baked -- last_name:beans

2. csv.reader的namedtuple

def csv_read_nametuple():'''namedtuple 可通过属性访问'''file = open('./txt/names.csv', 'r')reader = csv.reader(file)head = next(reader)print(head)# 构建一个namedtuple的模板from collections import namedtuplerow = namedtuple('rom',head)print(row)for r in reader:row = row(*r)# 读取的csv中每一行的内容,实例化row模板# 通过属性访问print('{}:{} -- {}:{}'.format(head[0],row.first_name,head[1],row.last_name))

输出同上

3. csv.dictreader以字典的形式读取

  • 获取表头 reader.fieldnames
def csv_read_dict():file = open('./txt/names.csv', 'r')reader = csv.dictreader(file)fieldname = reader.fieldnames# 获取表头for r in reader:print('{}:{} -- {}:{}'.format(fieldname[0], r['first_name'],fieldname[1], r['last_name']))

输出同上

二、csv模块写文件

1. 单个属性写入csv.writer

import csv def csv_write():fw = open('./txt/charater2number.csv','w',newline='',encoding='utf-8')write = csv.writer(fw)number = range(65, 70)char = list(map(chr, number))for i in range(len(char)):write.writerow([char[i],number[i]])# if __name__ == '__main__':csv_write()


不设置newline时,默认是\n

3. 元组形式写入csv.writer

def write_tuple():file = open('./txt/person information.csv','w',encoding='utf8',newline='')head = ['id','name','gender']rows = [(1,'amy','f'),(2,'tommy','m'),(3,'blair','f'),]writer = csv.writer(file)writer.writerow(head)# 写入表头writer.writerows(rows) # 写入主题内容,接收列表对象file.close()

2. 字典形式写入csv.dictwriter

写入的单行writer.writerow和多行writer.writerows
writer.writeheader()# 写入文件头

import csvdef csv_write_rows():with open('./txt/names.csv', 'w', newline='') as csvfile:fieldnames = ['first_name', 'last_name']writer = csv.dictwriter(csvfile, fieldnames=fieldnames)writer.writeheader()# 写入文件头# 单行写入# writer.writerow({'first_name': 'baked', 'last_name': 'beans'})# writer.writerow({'first_name': 'lovely', 'last_name': 'spam'})# writer.writerow({'first_name': 'wonderful', 'last_name': 'spam'})# 多行写入writer.writerows([{'first_name': 'wonderful', 'last_name': 'spam'},\{'first_name': 'lovely', 'last_name': 'spam'}, \{'first_name': 'baked', 'last_name': 'beans'}]) if __name__ == '__main__':csv_write_rows()

总结

以上是尊龙游戏旗舰厅官网为你收集整理的python中csv模块读写文件的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得尊龙游戏旗舰厅官网网站内容还不错,欢迎将尊龙游戏旗舰厅官网推荐给好友。

  • 上一篇:
  • 下一篇:
网站地图