Liệt kê đối tượng vào csv python

Nếu bạn có một danh sách từ điển và muốn chuyển đổi hoặc xuất nó sang tệp CSV thì bài đăng này là dành cho bạn. Trong hướng dẫn này, bạn sẽ biết cách chuyển đổi danh sách từ điển sang CSV trong python qua các bước

Cú pháp của hàm được sử dụng

Trong bài đăng này, chúng tôi đã sử dụng một hàm tạo DataFrame() và hàm to_csv(). Cú pháp dưới đây

pandas.DataFrame(your_list_of_dictionaries)
to_csv("name_of_csv_file.csv")

Các bước để chuyển đổi danh sách từ điển sang CSV trong python

Bước 1. Nhập mô-đun gấu trúc

Nhập mô-đun pandas bằng câu lệnh nhập

import pandas as pd

Bước 2. Tạo danh sách từ điển

Trong bước này, chúng tôi sẽ tạo một danh sách từ điển mẫu sẽ được sử dụng để chuyển đổi danh sách từ điển sang CSV

list_of_dicts = [
  {
    "country": "USD",
    "capital": "Washington DC",
    "dial_code": 1
  },
  {
    "name": "UK",
    "capital": "London",
    "dial_code": 44
  }
]

Bước 3. Tạo khung dữ liệu

Bạn sẽ chuyển đổi danh sách từ điển thành khung dữ liệu bằng lệnh pd. hàm tạo DataFrame(). Truyền danh sách từ điển cho nó

df = pd.DataFrame(list_of_dicts)

Bước 4. Xuất khung dữ liệu

Bây giờ, bước cuối cùng là xuất danh sách từ điển đã chuyển đổi sang tệp CSV bằng cách sử dụng khung dữ liệu. hàm to_csv()

df.to_csv("list_of_dict_to_csv.csv")

Đó là tất cả những gì bạn phải làm là chuyển đổi danh sách từ điển sang CSV trong python

Mã đầy đủ

import pandas as pd
list_of_dicts = [
  {
    "country": "USD",
    "capital": "Washington DC",
    "dial_code": 1
  },
  {
    "name": "UK",
    "capital": "London",
    "dial_code": 44
  }
]

df = pd.DataFrame(list_of_dicts)
df.to_csv("list_of_dict_to_csv.csv")

đầu ra

list of dictionary to csv in pythondanh sách từ điển sang csv trong python

Tóm lược

Trong hướng dẫn này, bạn đã biết cú pháp của pd. Hàm tạo DataFrame() và hàm to_csv(). Sau đó, bạn đã nhập mô-đun pandas để chuyển đổi danh sách từ điển thành khung dữ liệu trước tiên. Cuối cùng đã sử dụng hàm to_csv() để xuất khung dữ liệu sang tệp CSV

Danh sách là một cấu trúc dữ liệu tuyến tính trong python. Nó giống như một mảng có kích thước động trong các ngôn ngữ lập trình khác như Java và C++

Và CSV như chúng ta đã thảo luận ở trên, là một định dạng tệp đơn giản để biểu thị dữ liệu ở dạng bảng. Dữ liệu CSV toàn diện và dễ hiểu hơn

Bây giờ, hãy xem các phương pháp khác nhau để chuyển đổi danh sách thành CSV trong python

Phương pháp 1. Sử dụng Mô-đun CSV

Chúng tôi có thể dễ dàng chuyển đổi danh sách thành CSV trong python bằng cách nhập mô-đun CSV tích hợp trong python. Trong phương pháp này, chúng tôi sử dụng xử lý tệp trong python để đọc dữ liệu của danh sách và sau đó ghi nó vào tệp CSV

Hãy lấy một ví dụ để hiểu điều này tốt hơn

import csv
  
fields = ['Employee', 'ID', 'Salary'] 
    
rows = [ ['XYZ', '011', '2000'], 
         ['ABC', '012', '8000'],
         ['PQR', '351', '5000'],
         ['EFG', '146', '10000'] ] 
  
with open('EmployeeData.csv', 'w') as f:
      
    csv_writer = csv.writer(f)
    csv_writer.writerow(fields)
    csv_writer.writerows(rows)

đầu ra

________số 8_______

Giải trình

Trong ví dụ này, điều đầu tiên chúng tôi phải làm là nhập mô-đun CSV vào tệp chương trình python của mình và sau đó chúng tôi chỉ có thể sử dụng csv của nó. viết phương pháp

Sau khi nhập mô-đun CSV, chúng tôi tạo hai danh sách

Danh sách trường được sử dụng để xác định các cột của tệp CSV và biến rows trong mã là danh sách các danh sách sẽ tạo các hàng của tệp CSV. Sau đó, chúng tôi sử dụng câu lệnh with để mở EmployeeData. csv và nếu không có tệp nào như vậy tồn tại trong thư mục hiện tại thì lệnh này sẽ tạo một EmployeeData. tệp csv

Sau đó, chúng tôi ghi dữ liệu danh sách của mình (cả cột/trường và hàng) vào tệp CSV bằng cách chuyển tệp vào trình tạo đối tượng người ghi

Phương pháp 2. Sử dụng gấu trúc

Trong phương pháp này, chúng tôi sử dụng gấu trúc, gói python, để chuyển đổi danh sách thành CSV. Trước tiên, chúng tôi chuyển đổi danh sách thành cấu trúc dữ liệu khung dữ liệu và sau đó sử dụng hàm to_csv() để chuyển đổi khung dữ liệu thành tệp CSV

import pandas as pd  
  
emp = ["XYZ", "ABC", "PQR", "EFG"] 
id = [11, 12, 51, 46] 
sly = [2000, 8000, 5000, 10000] 
     
dict = {'Employee': emp, 'ID': id, 'Salary': sly}  
       
df = pd.DataFrame(dict) 
    
df.to_csv('EmployeeData.csv') 

đầu ra

| Employee | ID | Salary |
| -------- | -------- | -------- |
| XYZ     | 11     | 2000     |
| ABC     | 12     | 8000     |
| PQR     | 51     | 5000     |
| EFG     | 46     | 10000     |

Giải trình

Trong ví dụ trên, trước tiên chúng tôi đã nhập thư viện gấu trúc vào mã của mình và sau đó xác định ba danh sách, đây là các hàng. Và sau đó, chúng tôi ánh xạ các hàng này với các cột của chúng bằng từ điển. Sau đó, chúng tôi sử dụng pd. DataFrame() để chuyển đổi danh sách thành DataFrame và sau đó chúng tôi sử dụng hàm to_csv() để chuyển đổi cấu trúc dữ liệu DataFrame thành tệp CSV

DataFrame là một cấu trúc dữ liệu cho phép chúng ta thực hiện các hoạt động khác nhau thông qua các phương thức của nó. Một trong số đó là phương thức to_csv() cho phép chúng ta ghi nội dung của nó vào tệp CSV như chúng ta đã thực hiện trong ví dụ trên

Phương pháp 3. Sử dụng NumPy

Numpy là một package rất nổi tiếng khác của python. Đó là một điều rất nổi tiếng về Khoa học dữ liệu và Học máy

Chúng tôi có thể chuyển đổi danh sách thành tệp CSV bằng cách sử dụng hàm savetxt() của NumPy. Hàm savetxt() lưu một mảng vào tệp văn bản. Chúng ta cũng có thể sử dụng hàm savetxt() để lưu dữ liệu vào tệp CSV

import numpy as np
  
rows = [ ['Employee', 'ID', 'Salary']
         ['XYZ', '011', '2000'], 
         ['ABC', '012', '8000'],
         ['PQR', '351', '5000'],
         ['EFG', '146', '10000'] ]

np.savetxt("EmployeeData.csv", 
           rows,
           delimiter =", ", 
           fmt ='% s')

đầu ra

________số 8_______

Giải thích Trong phương pháp này, chúng tôi đang sử dụng gói Numpy, vì vậy trước tiên chúng tôi nhập gói đó vào mã python của mình. Sau đó, giống như chúng ta đã làm trong các ví dụ khác, chúng ta sẽ tạo danh sách chứa các hàng

Sau đó, chúng tôi ghi dữ liệu này vào tệp CSV của mình bằng cách sử dụng. phương thức savetxt() lấy tên tệp CSV làm đối số. Nếu tệp chưa có, hàm sẽ tạo một tệp và sau đó ghi dữ liệu danh sách vào đó

Làm cách nào để chuyển đổi đối tượng danh sách thành CSV bằng Python?

Chúng tôi có thể chuyển đổi danh sách thành tệp CSV bằng cách sử dụng hàm savetext() của NumPy . Hàm savetxt() lưu một mảng vào tệp văn bản. Chúng ta cũng có thể sử dụng hàm savetxt() để lưu dữ liệu vào tệp CSV. Giải thích Trong phương pháp này, chúng tôi đang sử dụng gói Numpy, vì vậy trước tiên chúng tôi nhập gói đó vào mã python của mình.

Làm cách nào để tạo CSV từ Python?

Cách tạo tệp CSV bằng Python? .
Mở tệp CSV bằng văn bản (chế độ w) với sự trợ giúp của hàm open()
Tạo đối tượng trình ghi CSV bằng cách gọi hàm write() của mô-đun csv
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 trình ghi CSV
Cuối cùng, đóng tệp CSV

Phương pháp nào lấy đối số danh sách và ghi nó vào tệp CSV?

Tệp CSV là định dạng văn bản có giới hạn sử dụng dấu phẩy để phân tách các giá trị. Phương pháp phổ biến nhất để ghi dữ liệu từ danh sách vào tệp CSV là phương thức writerow() của lớp nhà văn và DictWriter .

Làm cách nào để chuyển đổi mảng thành CSV bằng Python?

Sử dụng gấu trúc. hàm to_csv() để ghi mảng Python vào CSV
Sử dụng numpy. hàm tofile() để ghi mảng Python vào CSV
Sử dụng numpy. hàm savetxt() để ghi mảng Python vào CSV
Sử dụng các phương thức xử lý tệp để ghi mảng Python vào CSV
Sử dụng hàm writerows() để ghi mảng Python vào CSV