如何以Python方式检测CSV文件中的缺失字段?
我正在尝试使用Python的csv
模块(特别是DictReader
该类)解析CSV文件。有没有Python的方法来检测空白或缺失的字段并引发错误?
这是使用以下标题的示例文件:NAME,LABEL,VALUE
foo,bar,baz
yes,no
x,y,z
解析时,我希望第二行抛出一个错误,因为它缺少VALUE字段。
这是一个代码片段,显示了我是如何实现的(忽略硬编码的字符串…它们只是为了简洁起见):
import csv
HEADERS = ["name", "label", "value" ]
fileH = open('configFile')
reader = csv.DictReader(fileH, HEADERS)
for row in reader:
if row["name"] is None or row["name"] == "":
# raise Error
if row["label"] is None or row["label"] == "":
# raise Error
...
fileH.close()
有没有一种更清洁的方法来检查CSV文件中的字段而没有一堆if
语句?如果需要添加更多字段,则还需要更多条件,如果可能的话,我希望避免这些条件。