我正在通过上传读取 csv 文件并尝试将所有值存储在列表中
def upload(request):
paramFile = request.FILES['file'].read()
data = csv.DictReader(paramFile)
list1 = []
for row in data:
list1.append(row)
print list1
文件.csv
12345,abcdef
输出
[{'1': '', None: ['']}, {'1': '2'}]
我想附加 list1
中的所有值
最佳答案
如果您使用的是 Python 3,这应该可以工作。
file = request.FILES['file']
decoded_file = file.read().decode('utf-8').splitlines()
reader = csv.DictReader(decoded_file)
for row in reader:
# Get each cell value based on key-value pair.
# Key will always be what lies on the first row.
我们可以使用 splitlines()
创建的列表。 splitlines()
被调用是因为 csv.DictReader
期望“任何支持迭代器协议(protocol)并在每次它的下一个时返回一个字符串的对象() 方法被调用——文件对象和列表对象都适合”。
关于python - 如何使用 csv.DictReader 在 django 中上传和读取 csv 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24704630/