【发布时间】:2015-06-02 09:17:10
【问题描述】:
我试图将csvfile 的内容复制到csvfile2。我看不到有关此主题的任何帮助。我还想将值 value 附加到 csvfile2 的第一行。例如:value = 1
输出应该像
`1_dog 1_cat 1_frog `
当value=2结果应该是
2_dog 2_cat 2_frog
取值范围在 1 到 csv 文件总行数之间。(totalrows)
我的试用码:
def csvupload(request, template_name='upload_csv.html'):
if request.method == 'POST':
form = CSVUploadForm(request.POST, request.FILES)
if form.is_valid():
error_list = set()
value = 1
csvfile = request.FILES['file']
file_name = csvfile.name
file_name = unicodedata.normalize('NFKD', file_name).encode('ascii','ignore')
csvfile2 = settings.MEDIA_ROOT + '/new/sample.csv'
writer = csv.writer(outfile, dialect='excel')
csvfile.open()
line_entries = csv.DictReader(csvfile, dialect='excel')
try:
csvfile.read()
line_entries = csv.DictReader(csvfile, dialect='excel', delimiter=',')
rows1 = list(csvfile)
totalrows = len(rows1)
success = True
except:
messages.error(request, "Could not parse file, invalid format")
success = False
return redirect('home')
if success:
messages.success(request, "File read..")
else:
for err in error_list:
messages.error(request, err)
else:
messages.error(request, "No file selected")
else:
form = CSVUploadForm()
context = {
'form': form
}
return render_to_response(template_name, context, context_instance=RequestContext(request))
这段代码不完整。我是python新手,很困惑。有人可以帮忙吗?
【问题讨论】:
-
1_dog 1_cat 1_frog似乎不是 csv。你能给我们看几行吗? -
我的意思是如果 csv 文件中的数据是 dog,cat,frog.. 那么新的 csv 文件应该显示像 1_dog 这样的值
-
看起来您在如何打开文件以及如何使用
csv模块方面存在问题。首先让你的代码在 django 之外工作,然后你可能有机会让它在 django 内部工作......