[python] 如何将不等长的list写入csv

这是一个总结。其中包括如何将不同长度的list写入csv中,还有如何将排列组合获得的列表写入csv中。

如果有看不懂的地方,欢迎留言。如果要转发的话,请注明出处。

1. 将不同长度的list写入csv中

这里面有两种挺有意思的方法。

import csv
##https://stackoverflow.com/questions/42086462/how-to-write-two-lists-of-different-length-to-column-and-row-in-csv-file
list1=['a','b']
list2=[['apple','banana','grapes'],['cheery']]
with open('0706.csv','w',newline='') as f:
    writer=csv.writer(f)
    header="col1","col2"
    writer.writerow(header)
    for i1,i2 in zip(list1,list2):
        writer.writerow([i1]+i2)

获得的结果为: 

 

 

另外一种是只有两列:

  • 5
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
### 回答1: 可以使用Python内置的csv模块来将list写入csv文件。 具体步骤如下: 1. 导入csv模块 ```python import csv ``` 2. 创建一个list,用于存储要写入csv文件的数据 ```python data = [['姓名', '年龄', '性别'], ['张三', '18', '男'], ['李四', '20', '女'], ['王五', '22', '男']] ``` 3. 打开csv文件,并创建csv写入对象 ```python with open('test.csv', 'w', newline='') as f: writer = csv.writer(f) ``` 4. 使用writerow()方法将list中的每一行数据写入csv文件 ```python for row in data: writer.writerow(row) ``` 完整代码如下: ```python import csv data = [['姓名', '年龄', '性别'], ['张三', '18', '男'], ['李四', '20', '女'], ['王五', '22', '男']] with open('test.csv', 'w', newline='') as f: writer = csv.writer(f) for row in data: writer.writerow(row) ``` 执行完以上代码后,会在当前目录下生成一个名为test.csvcsv文件,其中包含了list中的数据。 ### 回答2: Python 是一种简单易学的编程语言,广泛用于数据处理、Web 开发、科学计算等领域。在数据处理中,常常需要将 Python 中的 list 写入csv 文件中,以便进行后续的分析和处理。下面介绍如何使用 Pythonlist 写入 csv 文件。 一、创建 list 对象 首先,需要创建一个包含数据的 list 对象。例如,假设我们要将一个包含姓名、年龄、性别的列表写入 csv 文件,可以创建一个如下的 list: data = [ ['Tom', 23, 'M'], ['Jerry', 25, 'F'], ['Bob', 32, 'M'], ['Alice', 29, 'F'] ] 二、导入 csv 模块 Python 提供了一个 csv 模块,用于对 csv 文件进行处理。因此,需要先导入 csv 模块,示例代码如下: import csv 三、打开 csv 文件 接下来,需要打开一个 csv 文件并创建一个 csv.writer 对象,用于将 list 写入文件。在打开文件时,通常需要指定文件路径、文件名和打开模式。示例代码如下: with open('data.csv', 'w', encoding='utf-8', newline='') as csvfile: writer = csv.writer(csvfile) 在上面的示例代码中,'data.csv' 表示要打开的文件路径和文件名,'w' 表示以写入模式打开文件,'utf-8' 表示编码方式,'newline' 参数的值为 '' 表示不使用换行符,避免出现空行的问题。 四、将 list 写入 csv 文件 打开 csv 文件并创建一个 csv.writer 对象后,就可以将 list 写入 csv 文件了。示例代码如下: with open('data.csv', 'w', encoding='utf-8', newline='') as csvfile: writer = csv.writer(csvfile) for row in data: writer.writerow(row) 在上面的示例代码中,使用 for 循环将 list 中的每一行数据逐一写入 csv 文件中。 以上就是使用 Pythonlist 写入 csv 文件的方法。如果需要写入含有标题行的 csv 文件,则可以使用 csv.writer 的 writerows() 方法。在使用 csv 模块时还需要注意一些细节问题,例如编码、分隔符等,需要根据实际需要进行设置。 ### 回答3: Python是一种非常强大的编程语言,拥有丰富的标准库以及众多扩展库,使其在数据处理与科学计算领域得到了广泛的应用。而在数据处理中,常常需要将处理结果以CSV格式保存到文件中。本文将介绍Python如何将list写入CSV文件。 CSV文件是一种以逗号分隔的文本文件格式,通常用于存储表格数据。Python标准库中提供的csv模块可以方便地读取和写入CSV文件。 首先,我们需要导入csv模块并准备好待写入的数据。假设我们要将以下3个列表写入CSV文件: ```python names = ['Alice', 'Bob', 'Charlie'] ages = [25, 30, 35] scores = [80, 90, 95] ``` 创建CSV文件并写入数据的步骤如下: 1. 创建csv.writer对象,并指定文件名和写入模式(可以是'w'或'a',分别表示覆盖和追加)。 ```python import csv filename = 'data.csv' mode = 'w' with open(filename, mode, newline='') as file: writer = csv.writer(file) ``` 2. 将数据逐行写入CSV文件。 ```python import csv filename = 'data.csv' mode = 'w' names = ['Alice', 'Bob', 'Charlie'] ages = [25, 30, 35] scores = [80, 90, 95] with open(filename, mode, newline='') as file: writer = csv.writer(file) for name, age, score in zip(names, ages, scores): writer.writerow([name, age, score]) ``` 3. 最后,记得关闭文件。 ```python import csv filename = 'data.csv' mode = 'w' names = ['Alice', 'Bob', 'Charlie'] ages = [25, 30, 35] scores = [80, 90, 95] with open(filename, mode, newline='') as file: writer = csv.writer(file) for name, age, score in zip(names, ages, scores): writer.writerow([name, age, score]) file.close() ``` 通过以上代码,就可以将对应数据写入CSV文件中了。在实际应用中,我们可以将以上代码封装成一个函数,并根据不同的需求传入不同的参数调用。例如,如果数据是二维数组,则可以使用writerows()方法将多个行写入文件中,具体可见Python标准库csv模块的文档。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值