这个
documentation for the Python 3 CSV module
提供以下示例:
with open('example.csv', newline='') as csvfile:
dialect = csv.Sniffer().sniff(csvfile.read(1024))
csvfile.seek(0)
reader = csv.reader(csvfile, dialect)
# ... process CSV file contents here ...
这个
Sniffer
将尝试自动检测CSV文件的许多内容。你需要显式地调用它
has_header()
方法来确定文件是否具有标题行。如果是,则在迭代CSV行时跳过第一行。你可以这样做:
if sniffer.has_header():
for header_row in reader:
break
for data_row in reader:
# do something with the row