我正在寻找一种聪明的方法来检查文件的第一行,然后再将其作为 csv 文件读取。我想检查是否有一条# coding: xxx
线,以便我可以相应地解码读取的数据。但如果没有这样的行,第一行可能已经包含一个数据集。寻求对我来说似乎如此残酷,我希望有一种巧妙的方法来做到这一点。
import re
import csv
fl = open(filename)
line = fl.readline()
coding = re.match('^#\s*coding\s*(:|=|:=)\s*([\w\d\-_]+)\s*$', line)
fl.seek(0)
reader = csv.reader(fl)
# ...