【发布时间】:2014-12-16 17:37:41
【问题描述】:
我有一个函数,它可以在我的 django 应用程序中上传一个 csv 或 txt 文件,读取所有文件并将其处理成一个 python 列表。我注意到如果由于某种原因文件包含空行,它不会读到文件的末尾,而是返回一个空列表。你认为我错过了什么吗?这是我的代码。
是的,我可以告诉用户确保文件不包含任何空白行,但我想我可以让脚本足够聪明,在阅读时不会中断直到文件结束。
django #form #class #view
def read_the_file_content(self,file,filetype,message,sender): 打印“内部读取文件”
data = []
for row in csv.reader(file):
print row
num = str(re.sub("[^0-9]","",row[0]))
#print num
if num.startswith('0'):
phone_num = '234' + num[1:]
else:
phone_num = num
data.append(phone_num)
if data == []:
return []
else:
return set(data)
csvFIleData
07037062611 07063724920
08065537377 08168571687
【问题讨论】:
-
row是一个空行列表,因此num = str(re.sub("[^0-9]","",row[0]))应该会引发索引错误。你确定这个函数只是返回一个空列表吗? -
它没有引发任何错误。无论如何,谢谢。
标签: python django django-1.6