Hướng dẫn write list to column csv python - ghi danh sách vào cột csv python

48

Mới! Lưu câu hỏi hoặc câu trả lời và sắp xếp nội dung yêu thích của bạn. Tìm hiểu thêm.
Learn more.

Tôi có 5 danh sách, tất cả cùng một độ dài và tôi muốn viết chúng vào 5 cột trong CSV. Cho đến nay, tôi chỉ có thể viết một vào cột với mã này:

with open('test.csv', 'wb') as f:
    writer = csv.writer(f)
    for val in test_list:
        writer.writerow([val])

Nếu tôi thêm một vòng lặp ____99 khác, nó chỉ viết danh sách đó vào cùng một cột. Có ai biết một cách tốt để có được năm cột riêng biệt không?

Hướng dẫn write list to column csv python - ghi danh sách vào cột csv python

hỏi ngày 17 tháng 7 năm 2013 lúc 15:40Jul 17, 2013 at 15:40

Hướng dẫn write list to column csv python - ghi danh sách vào cột csv python

Alex Chumbleyalex ChumbleyAlex Chumbley

7443 Huy hiệu vàng10 Huy hiệu bạc14 Huy hiệu đồng3 gold badges10 silver badges14 bronze badges

Thay đổi chúng thành hàng:

rows = zip(list1, list2, list3, list4, list5)

Sau đó chỉ:

import csv

with open(newfilePath, "w") as f:
    writer = csv.writer(f)
    for row in rows:
        writer.writerow(row)

Hướng dẫn write list to column csv python - ghi danh sách vào cột csv python

Siêu bão

4.7465 Huy hiệu vàng20 Huy hiệu bạc32 Huy hiệu Đồng5 gold badges20 silver badges32 bronze badges

Đã trả lời ngày 17 tháng 7 năm 2013 lúc 15:43Jul 17, 2013 at 15:43

Joran Beasleyjoran BeasleyJoran Beasley

106K12 Huy hiệu vàng149 Huy hiệu bạc174 Huy hiệu đồng12 gold badges149 silver badges174 bronze badges

3

Mã sau đây ghi danh sách Python vào các cột trong CSV

import csv
from itertools import zip_longest
list1 = ['a', 'b', 'c', 'd', 'e']
list2 = ['f', 'g', 'i', 'j']
d = [list1, list2]
export_data = zip_longest(*d, fillvalue = '')
with open('numbers.csv', 'w', encoding="ISO-8859-1", newline='') as myfile:
      wr = csv.writer(myfile)
      wr.writerow(("List1", "List2"))
      wr.writerows(export_data)
myfile.close()

Đầu ra trông như thế này

Hướng dẫn write list to column csv python - ghi danh sách vào cột csv python

Đã trả lời ngày 17 tháng 11 năm 2017 lúc 13:40Nov 17, 2017 at 13:40

1

Bạn có thể sử dụng

rows = zip(list1, list2, list3, list4, list5)
0 để kết hợp danh sách của mình và sau đó lặp lại chúng

for val in itertools.izip(l1,l2,l3,l4,l5):
    writer.writerow(val)

Đã trả lời ngày 17 tháng 7 năm 2013 lúc 15:45Jul 17, 2013 at 15:45

1

Nếu bạn rất vui khi sử dụng thư viện của bên thứ 3, bạn có thể làm điều này với gấu trúc. Các lợi ích bao gồm truy cập liền mạch vào các phương thức chuyên dụng và ghi nhãn hàng / cột:

import pandas as pd

list1 = [1, 2, 3]
list2 = [4, 5, 6]
list3 = [7, 8, 9]

df = pd.DataFrame(list(zip(*[list1, list2, list3]))).add_prefix('Col')

df.to_csv('file.csv', index=False)

print(df)

   Col0  Col1  Col2
0     1     4     7
1     2     5     8
2     3     6     9

Đã trả lời ngày 22 tháng 11 năm 2018 lúc 12:20Nov 22, 2018 at 12:20

Hướng dẫn write list to column csv python - ghi danh sách vào cột csv python

JPPJPPjpp

152K32 Huy hiệu vàng259 Huy hiệu bạc319 Huy hiệu đồng32 gold badges259 silver badges319 bronze badges

Tôi không muốn nhập bất cứ thứ gì khác ngoài CSV và tất cả các danh sách của tôi đều có cùng số lượng mặt hàng. Câu trả lời hàng đầu ở đây dường như làm cho các danh sách thành một hàng, thay vì một cột. Vì vậy, tôi đã lấy câu trả lời ở đây và đưa ra điều này:

import csv
list1 = ['a', 'b', 'c', 'd', 'e']
list2 = ['f', 'g', 'i', 'j','k']
with open('C:/test/numbers.csv', 'wb+') as myfile:
    wr = csv.writer(myfile)
    wr.writerow(("list1", "list2"))
    rcount = 0
    for row in list1:
        wr.writerow((list1[rcount], list2[rcount]))
        rcount = rcount + 1
    myfile.close()

Đã trả lời ngày 1 tháng 2 năm 2019 lúc 16:40Feb 1, 2019 at 16:40

Tôi chỉ muốn thêm vào điều này - bởi vì thật lòng mà nói, tôi đập đầu vào nó một lúc - và trong khi rất mới với Python - có lẽ nó sẽ giúp người khác ra ngoài.

 writer.writerow(("ColName1", "ColName2", "ColName"))
                 for i in range(len(first_col_list)):
                     writer.writerow((first_col_list[i], second_col_list[i], third_col_list[i]))

Đã trả lời ngày 24 tháng 5 năm 2020 lúc 18:46May 24, 2020 at 18:46

import csv
dic = {firstcol,secondcol} #dictionary
csv = open('result.csv', "w") 
for key in dic.keys():
    row ="\n"+ str(key) + "," + str(dic[key]) 
    csv.write(row)

Đã trả lời ngày 13 tháng 10 năm 2018 lúc 18:45Oct 13, 2018 at 18:45

1

Làm cách nào để viết vào cột khôn ngoan trong CSV Python?

Các bước sẽ được nối một cột trong tệp CSV là,..
Mở tệp 'input.csv' trong chế độ đọc và tạo đối tượng CSV.Reader cho tệp CSV này ..
Mở tệp 'output.csv' trong chế độ ghi và tạo đối tượng CSV.Writer cho tệp CSV này ..
Sử dụng đối tượng Reader, hãy đọc dòng tệp 'Input.csv' từng dòng. ....
Đóng cả đầu vào ..

Làm cách nào để viết một danh sách các yếu tố trong tệp CSV trong Python?

Python viết tệp CSV..
Đầu tiên, hãy mở tệp CSV để ghi (chế độ W) bằng cách sử dụng hàm Open () ..
Thứ hai, tạo đối tượng người viết CSV bằng cách gọi hàm writer () của mô -đun CSV ..
Thứ ba, ghi dữ liệu vào tệp CSV bằng cách gọi phương thức Writerow () hoặc Writerows () của đối tượng người viết CSV ..

Làm cách nào để lập danh sách vào tệp CSV?

Phương pháp phổ biến nhất để ghi dữ liệu từ danh sách sang tệp CSV là phương thức Writerow () của lớp Nhà văn và DictWriter.Ví dụ 1: Tạo tệp CSV và ghi dữ liệu hàng khôn ngoan vào nó bằng lớp nhà văn.writerow() method of writer and DictWriter class. Example 1: Creating a CSV file and writing data row-wise into it using writer class.

Bạn có thể viết trực tiếp vào tệp CSV trong Python không?

Để ghi vào tệp CSV trong Python, chúng ta có thể sử dụng hàm csv.writer ().CSV.hàm writer () trả về một đối tượng nhà văn chuyển đổi dữ liệu của người dùng thành một chuỗi được phân định.use the csv. writer() function. The csv. writer() function returns a writer object that converts the user's data into a delimited string.