python csv 空值处理

时间: 2024-07-27 07:01:18 浏览: 131
在Python中处理CSV文件中的空值通常涉及到两个主要方面:读取文件时识别空值和写入文件时处理空值。 1. **读取CSV文件中的空值**: Python的标准库`csv`模块在读取CSV时,默认会将逗号分隔的空字段视为None。例如,如果CSV中有"Name,"这样的行,它会被解析为`['Name', None]`。你可以直接处理None值,也可以设置`csv.reader`的`skipinitialspace`参数为True,去除首部空白导致的空值。 ```python import csv with open('file.csv', 'r') as file: reader = csv.reader(file) for row in reader: # 检查并处理空值 cleaned_row = [cell if cell else '' for cell in row] ``` 2. **写入CSV文件时处理空值**: 如果你想在写入CSV时保持兼容性,可以使用`csv.writer`的`writerow()`函数,当传递列表中的元素包含None时,会被转换为''。如果你需要保留原始的None,可以在写入前将其替换为特定标记,如``或者其他的值。 ```python import csv data = [['Name', 'Age'], ['John', 25], ['', 30], ['Jane', None]] with open('output.csv', 'w', newline='') as file: writer = csv.writer(file) for row in data: writer.writerow(row) ```
阅读全文

相关推荐