Hướng dẫn how to read from one csv file and write to another in python - cách đọc từ một tệp csv và ghi vào tệp khác trong python

Tôi có tệp .csv này ...

    id,first_name,last_name,email,date,opt-in,unique_code
    1,Jimmy,Reyes,,12/29/2016,FALSE,ER45DH
    2,Doris,Wood,,04/22/2016,,MU34T3
    3,Steven,Miller,,07/31/2016,FALSE,G34FGH
    4,Earl,Parker,,01-08-17,FALSE,ASY67J
    5,Barbara,Cruz,,12/30/2016,FALSE,NHG67P

Nếu giá trị chọn tham gia trống, nó sẽ in "0". Giá trị cuối cùng trong CSV nên in trước, và sau đó tất cả tên, các cặp giá trị ở một định dạng cụ thể, như được hiển thị trong tệp đầu ra dự kiến ​​bên dưới.last value in csv should print first, and then all the name, value pairs in a specific format, like shown in the expected output file below.

Đầu ra mong đợi của tôi

ER45DH"id"="1","first_name"="Jimmy","last_name"="Reyes","email"="","date"="12/29/2016","opt-in"="FALSE"
MU34T3"id"="2","first_name"="Doris","last_name"="Wood","email"="","date"="04/22/2016,"opt-in"="0"
.......

Mã của tôi cho đến nay ..

import csv

with open('newfilename.csv', 'w') as f2:
    with open('mycsvfile.csv', mode='r') as infile:
        reader = csv.reader(infile)
        for i,rows in enumerate(reader):
            if i == 0:
               header = rows 
            else:
                if rows[5] == '':
                   rows[5] = 0;
                pat = rows[0]+'\t'+'''"%s"="%%s",'''*(len(header)-2)+'''"%s"="%%s"‌​\n'''
                print pat
                f2.write(pat % tuple(header[1:]) % tuple(rows[1:]))
    f2.close()

Mã này tạo ra đầu ra này

1   "first_name"="Jimmy","last_name"="Reyes","email"="","date"="12/29/2016","opt-in"="FALSE","unique_code"="ASD34R"‌​
2   "first_name"="Doris","last_name"="Wood","email"="","date"="04/22/2016","opt-in"="0","unique_code"="SDS56N"

Như bạn có thể thấy cột "id" bị thiếu và tôi muốn unque_code ở vị trí đầu tiên.

Tôi thực sự sẽ đánh giá cao bất kỳ sự giúp đỡ/ý tưởng/gợi ý.

Cảm ơn

Nếu bạn cần đọc CSV trong Python như đọc các tệp CSV (và viết) cho họ, bạn sẽ gặp may. Trong hướng dẫn này, bạn sẽ học cách đọc, ghi và nối dữ liệu vào các tệp CSV trong các tập lệnh Python của bạn!

Bắt đầu nào!

  • Điều kiện tiên quyết
  • Cách đọc CSV trong Python
  • Tạo các tệp CSV với Python
  • Nối vào tệp CSV có từ điển
  • Đọc từ một tệp CSV để ghi sang một tệp khác
  • Xóa các cột khỏi các tệp CSV với Python
  • Sự kết luận

Điều kiện tiên quyết

Cách đọc CSV trong Python

  • Tạo các tệp CSV với Python
  • Nối vào tệp CSV có từ điển

Cách đọc CSV trong Python

Tạo các tệp CSV với Python

Nối vào tệp CSV có từ điển

Đọc từ một tệp CSV để ghi sang một tệp khác

Xóa các cột khỏi các tệp CSV với Python

import csv #import to use the csv module

with open('demo_csv.csv', mode="r") as csv_file: #"r" represents the read mode
    reader = csv.reader(csv_file) #this is the reader object

    for item in reader:
    # you have to loop through the document to get each data
        print(item)

Sự kết luận

Hướng dẫn này sẽ là một cuộc biểu tình thực hành. Nếu bạn thích theo dõi, hãy chắc chắn rằng bạn có những điều sau:

Hướng dẫn how to read from one csv file and write to another in python - cách đọc từ một tệp csv và ghi vào tệp khác trong python
Một máy chủ Windows hoặc Linux với Python 3 được cài đặt. Hướng dẫn này sẽ sử dụng Windows, nhưng Linux cũng sẽ hoạt động tốt.

Hướng dẫn how to read from one csv file and write to another in python - cách đọc từ một tệp csv và ghi vào tệp khác trong python
Một trình chỉnh sửa mã như & nbsp; vs mã để sao chép và dán đoạn mã python đến.

Hãy để bắt đầu và xem cách bạn có thể đọc CSV trong Python. Python cung cấp một mô-đun tích hợp có tên

ER45DH"id"="1","first_name"="Jimmy","last_name"="Reyes","email"="","date"="12/29/2016","opt-in"="FALSE"
MU34T3"id"="2","first_name"="Doris","last_name"="Wood","email"="","date"="04/22/2016,"opt-in"="0"
.......
0 có nhiều phương pháp khác nhau cho phép bạn làm việc với các tệp CSV, vì vậy hãy để sử dụng điều đó.

import csv

with open('demo_csv.csv', mode="r") as csv_file:
    reader = csv.reader(csv_file) 

    for item in reader:
        print(item[1])# index is added to get a particular column

Để đọc các tệp CSV, mô -đun Python

ER45DH"id"="1","first_name"="Jimmy","last_name"="Reyes","email"="","date"="12/29/2016","opt-in"="FALSE"
MU34T3"id"="2","first_name"="Doris","last_name"="Wood","email"="","date"="04/22/2016,"opt-in"="0"
.......
0 cung cấp một phương thức gọi là
ER45DH"id"="1","first_name"="Jimmy","last_name"="Reyes","email"="","date"="12/29/2016","opt-in"="FALSE"
MU34T3"id"="2","first_name"="Doris","last_name"="Wood","email"="","date"="04/22/2016,"opt-in"="0"
.......
2. Trước tiên, hãy trình bày cách sử dụng phương pháp này.

Hướng dẫn how to read from one csv file and write to another in python - cách đọc từ một tệp csv và ghi vào tệp khác trong python
1. Tạo một thư mục at & nbsp; ~/pythoncsvdemo & nbsp; và & nbsp; tải tệp CSV này vào đó. Ví dụ CSV chứa một danh sách những người hư cấu với các cột có tên, tình dục, tình dục, tuổi, độ cao (trong), và trọng lượng (lbs). Tệp CSV này sẽ được sử dụng trong suốt hướng dẫn này.

Tạo các tệp CSV với Python

Nối vào tệp CSV có từ điển

Đọc từ một tệp CSV để ghi sang một tệp khác

Xóa các cột khỏi các tệp CSV với Python

Sự kết luận

Hướng dẫn này sẽ là một cuộc biểu tình thực hành. Nếu bạn thích theo dõi, hãy chắc chắn rằng bạn có những điều sau:

Hướng dẫn how to read from one csv file and write to another in python - cách đọc từ một tệp csv và ghi vào tệp khác trong python
Một máy chủ Windows hoặc Linux với Python 3 được cài đặt. Hướng dẫn này sẽ sử dụng Windows, nhưng Linux cũng sẽ hoạt động tốt.

Nối vào tệp CSV có từ điển

Đọc từ một tệp CSV để ghi sang một tệp khác

import csv
  
# list of column names 
field_names = ['Name','Sex','Age','Height (in)','Weight (lbs)']
  
# Dictionary
dict = {"Name": "Muhammed", "Sex":"F","Age":10, "Height (in)":34, "Weight (lbs)": 139}

with open('demo_csv.csv', 'a') as csv_file:
    dict_object = csv.DictWriter(csv_file, fieldnames=field_names) 
  
    dict_object.writerow(dict)

Hướng dẫn how to read from one csv file and write to another in python - cách đọc từ một tệp csv và ghi vào tệp khác trong python
Nối vào tệp CSV có từ điển

Đọc từ một tệp CSV để ghi sang một tệp khác

Có lẽ bạn đã có một tệp CSV hiện có và muốn sử dụng nó làm đầu vào cho tệp CSV khác. Bạn có thể thực hiện nó bằng cách sử dụng kết hợp chế độ đọc và phương thức

ER45DH"id"="1","first_name"="Jimmy","last_name"="Reyes","email"="","date"="12/29/2016","opt-in"="FALSE"
MU34T3"id"="2","first_name"="Doris","last_name"="Wood","email"="","date"="04/22/2016,"opt-in"="0"
.......
2 và chế độ ghi và phương thức
1   "first_name"="Jimmy","last_name"="Reyes","email"="","date"="12/29/2016","opt-in"="FALSE","unique_code"="ASD34R"‌​
2   "first_name"="Doris","last_name"="Wood","email"="","date"="04/22/2016","opt-in"="0","unique_code"="SDS56N"
6.

Kịch bản sau:

  • Mở một tệp hiện có được gọi là
    1   "first_name"="Jimmy","last_name"="Reyes","email"="","date"="12/29/2016","opt-in"="FALSE","unique_code"="ASD34R"‌​
    2   "first_name"="Doris","last_name"="Wood","email"="","date"="04/22/2016","opt-in"="0","unique_code"="SDS56N"
    
    7 ở chế độ đọc
  • Đọc tệp dưới dạng CSV với phương thức
    ER45DH"id"="1","first_name"="Jimmy","last_name"="Reyes","email"="","date"="12/29/2016","opt-in"="FALSE"
    MU34T3"id"="2","first_name"="Doris","last_name"="Wood","email"="","date"="04/22/2016,"opt-in"="0"
    .......
    
    2
  • Mở một CSV khác được gọi là
    1   "first_name"="Jimmy","last_name"="Reyes","email"="","date"="12/29/2016","opt-in"="FALSE","unique_code"="ASD34R"‌​
    2   "first_name"="Doris","last_name"="Wood","email"="","date"="04/22/2016","opt-in"="0","unique_code"="SDS56N"
    
    9 ở chế độ ghi
  • Đọc từng hàng trong tệp CSV nguồn và ghi các vai trò đó trong tệp CSV đích bằng cách sử dụng dấu phân cách
    import csv #import to use the csv module
    
    with open('demo_csv.csv', mode="r") as csv_file: #"r" represents the read mode
        reader = csv.reader(csv_file) #this is the reader object
    
        for item in reader:
        # you have to loop through the document to get each data
            print(item)
    0.

import csv

with open("demo_csv.csv", mode="r") as old_file:
    reader_obj = csv.reader(old_file) #read the current csv file

    with open("new_demo_csv.csv", mode="w") as new_file:
        writer_obj = csv.writer(new_file, delimiter="-") # Writes to the new CSV file 

        for data in reader_obj:
            #loop through the read data and write each row in new_demo_csv.csv
            writer_obj.writerow(data)

Xóa các cột khỏi các tệp CSV với Python

Hãy để kết thúc hướng dẫn này bằng cách xóa các cột khỏi các tệp CSV. Thật không may, việc loại bỏ các cột không phải là đơn giản như đọc hoặc ghi vào các tệp CSV, nhưng bạn sẽ thấy nó vẫn chắc chắn có thể.

Để xóa các trường khỏi tệp CSV, bạn có thể trực tiếp xóa chúng. Thay vào đó, bạn phải đọc tất cả các trường trong tệp CSV và sau đó ghi vào một tệp CSV khác, không bao gồm tất cả các trường bạn không muốn, như dưới đây.

import csv

with open("demo_csv.csv", mode="r") as original:
    reader_obj = csv.reader(original)
      
    with open("output.csv", mode="w") as new:
        writer_obj = csv.writer(new)
        for column in reader_obj:
            writer_obj.writerow((column[0], column[1], column[2])) # this represents the columns you need

Sự kết luận

Bây giờ bạn nên có một số kiến ​​thức nền tảng để đọc CSV trong Python, ghi vào các tệp CSV và thậm chí xóa các trường khỏi các tệp CSV. Sử dụng mô -đun Python

ER45DH"id"="1","first_name"="Jimmy","last_name"="Reyes","email"="","date"="12/29/2016","opt-in"="FALSE"
MU34T3"id"="2","first_name"="Doris","last_name"="Wood","email"="","date"="04/22/2016,"opt-in"="0"
.......
0 với các phương pháp khác nhau, bạn có thể thực hiện công việc nhanh chóng của các tệp CSV trong Python!

Làm thế nào để bạn có kế hoạch kết hợp kiến ​​thức mới được phát hiện này vào các dự án Python của bạn?

Làm cách nào để đọc và viết cùng một tệp CSV trong Python?

Mã trên tạo ra tệp đầu ra sau:..
myfile.csv. ....
# Đọc một tệp có dấu phân cách khác nhau '|' Nhập CSV với Open ('myfile.csv') dưới dạng f: reader = csv.Reader (f, delimiter = '|') cho hàng trong reader: in (hàng) # in: # ['bob', '25', 'Người quản lý', 'Seattle'] # ['Sam', '30', 'Nhà phát triển', 'New York'].

Làm cách nào để viết nội dung của tệp CSV trong Python?

Viết các tệp CSV với CSV. Class DictWriter () có thể được sử dụng để ghi vào tệp CSV từ từ điển Python. Ở đây, tệp - tệp CSV nơi chúng tôi muốn viết. Tên trường - Một đối tượng danh sách nên chứa các tiêu đề cột chỉ định thứ tự trong đó dữ liệu nên được ghi trong tệp CSV.DictWriter() class can be used to write to a CSV file from a Python dictionary. Here, file - CSV file where we want to write to. fieldnames - a list object which should contain the column headers specifying the order in which data should be written in the CSV file.

Làm thế nào để bạn đọc và viết tệp CSV bằng Python bằng gấu trúc?

Pandas: Cách đọc và ghi tệp..
Cài đặt gấu trúc ..
Chuẩn bị dữ liệu ..
Sử dụng các hàm pandas read_csv () và .to_csv ().Viết tệp CSV.....
Sử dụng gấu trúc để viết và đọc các tệp excel.Viết một tệp excel.....
Hiểu API PANDAS IO.Viết tập tin.....
Làm việc với các loại tệp khác nhau.Tệp CSV.....
Làm việc với dữ liệu lớn.....
Conclusion..

Làm cách nào để đọc hai tệp CSV trong Python?

# Đọc các tệp CSV từ danh sách df = pd.Concat (bản đồ (pd. ...
# Nhập thư viện Nhập Glob Nhập gấu trúc dưới dạng PD # Nhận danh sách tệp CSV từ đường dẫn thư mục = '/apps/data_csv_files csv_files = glob.....
df = pd.....
# Bằng cách sử dụng hàm def readcsv (args): trả về pd.....
# Sử dụng thư viện dữ liệu Nhập DASK ..