Mẹo Chuyển đổi CSV thành tệp văn bản được phân tách bằng đường ống Python

Mẹo Hướng dẫn Chuyển đổi CSV thành tệp văn bản được phân tách bằng đường ống Python Mới Nhất

Dương Minh Dũng đang tìm kiếm từ khóa Chuyển đổi CSV thành tệp văn bản được phân tách bằng đường ống Python được Update vào lúc : 2022-12-28 00:14:06 . Với phương châm chia sẻ Mẹo về trong nội dung bài viết một cách Chi Tiết 2022. Nếu sau khi Read Post vẫn ko hiểu thì hoàn toàn có thể lại Comments ở cuối bài để Mình lý giải và hướng dẫn lại nha.


Sao chép mã này và dán vào HTML của bạn

Nội dung chính Show
    Tệp CSV là gì?Đọc tệp CSV bằng trình đọc()Tùy chỉnh trình đọc()đối số dấu phân cáchđối số skipinitialspaceđối số quotecharđối số escapechartrích dẫn kép đối sốViết tệp CSV bằng trình ghi ()Đọc tệp CSV bằng DictReaderViết tệp CSV bằng DictWriter()Tạo phương ngữLàm cách nào để quy đổi CSV sang txt bằng Python?Tệp CSV hoàn toàn có thể được phân tách bằng đường ống không?

parser = argparse.ArgumentParser(description='Converts a regular CSV to a piple delimited file with no quotes.')

parser.add_argument('csv_file', help='The CSV file to parse.')

csv_reader = csv.reader(open(args.csv_file, 'rb'), delimiter=",", quotechar=""")

(Nhà tài trợ) Bắt đầu học Python với hướng dẫn Giới thiệu về Python miễn phí của DataCamp. Tìm hiểu Khoa học tài liệu bằng phương pháp hoàn thành xong những thử thách mã hóa tương tác và xem video của những Chuyên Viên hướng dẫn. Bắt đầu giờ đây

Cập nhật ngày thứ 7 tháng 1 năm 2022

Tệp CSV là gì?

CSV (Các giá trị được phân tách bằng dấu phẩy) là định dạng trao đổi tài liệu phổ biến được những ứng dụng sử dụng để tạo và sử dụng tài liệu. Một số định dạng trao đổi tài liệu nổi tiếng khác là XML, HTML, JSON, v.v.

Tệp CSV là một tệp văn bản đơn giản trong đó mỗi dòng chứa list những giá trị (hoặc trường) được phân tách bằng dấu phẩy

Mặc dù thuật ngữ "Dấu phẩy" xuất hiện trong chính tên định dạng, nhưng bạn sẽ phát hiện những tệp CSV trong đó tài liệu được phân tách bằng tab (

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 7) hoặc dấu gạch ngang (id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 8) hoặc bất kỳ ký tự nào khác hoàn toàn có thể được sử dụng làm dấu phân cách

Dòng đầu tiên của tệp CSV đại diện cho tiêu đề chứa list tên cột trong tệp. Tiêu đề là tùy chọn nhưng rất khuyến khích

Tệp CSV thường được sử dụng để biểu thị tài liệu dạng bảng. Ví dụ, hãy xem xét bảng sau

IDTênQuốc giaMãQuậnDân số1KabulAFGKabol17800002QandaharAFGQandahar2375003HeratAFGHerat1868004Mazar-e-SharifAFGBalkh1278005AmsterdamNLDNoord-Holland731200

Bảng trên hoàn toàn có thể được màn biểu diễn bằng định dạng CSV như sau

"ID","Name","CountryCode","District","Population" "1","Kabul","AFG","Kabol","1780000" "2","Qandahar","AFG","Qandahar","237500" "3","Herat","AFG","Herat","186800" "4","Mazar-e-Sharif","AFG","Balkh","127800" "5","Amsterdam","NLD","Noord-Holland","731200"

Nếu những giá trị trong tệp CSV của bạn chứa dấu phẩy, thì giá trị đó phải được đặt trong dấu ngoặc kép. Ví dụ

TênTuổiĐịa chỉJerry102776 McDowell Street, Nashville, TennesseeTom203171 Jessie Street, Westerville, OhioMike301818 Sherman Street, Hope, Kansas

Để giữ lại dấu phẩy bên trong trường Địa chỉ, hãy đặt nó trong dấu ngoặc kép, như sau

Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas"

Tương tự, nếu bạn có dấu ngoặc kép được nhúng bên trong một trường, trường đó phải được thoát bằng một ký tự dấu ngoặc kép khác. Nếu không, họ sẽ không được lý giải một cách đúng chuẩn. Ví dụ

IdUserComment1BobJohn đã nói "Xin chào thế giới"2Tom"Nhà ảo thuật"

Để không thay đổi dấu ngoặc kép bên trong trường Nhận xét, hãy sử dụng hai dấu ngoặc kép

Id,User,Comment 1,Bob,"John said ""Hello World""" 2,Tom,""The Magician""

Điều quan trọng cần lưu ý là định dạng CSV không được chuẩn hóa hoàn toàn. Vì vậy, những quy tắc chúng tôi vừa đề cập là không phổ biến. Thỉnh thoảng, bạn sẽ gặp những tệp CSV có cách thể hiện những trường rất khác nhau

May mắn thay, để giúp mọi việc thuận tiện và đơn giản hơn với tất cả chúng ta, Python đáp ứng mô-đun

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 9

Trước khi chúng tôi khởi đầu đọc và ghi tệp CSV, bạn nên làm rõ về cách thao tác với tệp nói chung. Nếu bạn cần xem lại, hãy xem xét đọc cách đọc và ghi tệp bằng Python

Mô-đun

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 9 được sử dụng để đọc và ghi tệp. Nó đa phần đáp ứng những lớp và hiệu suất cao sauimport csv with open('employees.csv', 'rt') as f: csv_reader = csv.reader(f) next(csv_reader) # skip the heading for line in csv_reader: print(line[0], line[1], line[2]) 1import csv with open('employees.csv', 'rt') as f: csv_reader = csv.reader(f) next(csv_reader) # skip the heading for line in csv_reader: print(line[0], line[1], line[2]) 2import csv with open('employees.csv', 'rt') as f: csv_reader = csv.reader(f) next(csv_reader) # skip the heading for line in csv_reader: print(line[0], line[1], line[2]) 3import csv with open('employees.csv', 'rt') as f: csv_reader = csv.reader(f) next(csv_reader) # skip the heading for line in csv_reader: print(line[0], line[1], line[2]) 4

Hãy khởi đầu với hàm

import csv with open('employees.csv', 'rt') as f: csv_reader = csv.reader(f) next(csv_reader) # skip the heading for line in csv_reader: print(line[0], line[1], line[2]) 1

Đọc tệp CSV bằng trình đọc()

Hàm

import csv with open('employees.csv', 'rt') as f: csv_reader = csv.reader(f) next(csv_reader) # skip the heading for line in csv_reader: print(line[0], line[1], line[2]) 1 lấy một đối tượng tệp và trả về một đối tượng import csv with open('employees.csv', 'rt') as f: csv_reader = csv.reader(f) next(csv_reader) # skip the heading for line in csv_reader: print(line[0], line[1], line[2]) 7 hoàn toàn có thể được sử dụng để lặp lại nội dung của tệp CSV. Cú pháp của hàm import csv with open('employees.csv', 'rt') as f: csv_reader = csv.reader(f) next(csv_reader) # skip the heading for line in csv_reader: print(line[0], line[1], line[2]) 1 như sau

cú pháp. reader(fileobj [, method='excel' [, **fmtparam] ]) ->  _csv. người đọc

Đối sốMô tả

import csv with open('employees.csv', 'rt') as f: csv_reader = csv.reader(f) next(csv_reader) # skip the heading for line in csv_reader: print(line[0], line[1], line[2]) 9(bắt buộc) Nó đề cập đến đối tượng tệpid name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 70(tùy chọn) Phương ngữ đề cập đến những phương pháp rất khác nhau để định dạng tài liệu CSV. Theo mặc định, mô-đun id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 9 sử dụng định dạng in như Microsoft Excel. Chúng tôi sẽ thảo luận rõ ràng về phương ngữ sau trong nội dung bài viết này. id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 72(tùy chọn) Nó đề cập đến tập hợp những đối số từ khóa để tùy chỉnh phương ngữ (xem phần tiếp theo)

Giả sử tất cả chúng ta có tệp CSV sau

người lao động. csv

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 0

Đây là cách đọc tệp CSV này

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 1

Sản lượng dự kiến

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 2

Lưu ý rằng mỗi dòng trong tệp CSV được trả về dưới dạng list những chuỗi

Để lấy tài liệu từ những trường nhất định, bạn hoàn toàn có thể sử dụng lập chỉ mục. Ví dụ

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 3

Sản lượng dự kiến

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected]

Nếu bạn muốn bỏ qua tiêu đề, hãy gọi hàm tích hợp

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 73 trên đối tượng import csv with open('employees.csv', 'rt') as f: csv_reader = csv.reader(f) next(csv_reader) # skip the heading for line in csv_reader: print(line[0], line[1], line[2]) 7 và sau đó lặp qua những dòng còn sót lại như thông thường

________số 8

Sản lượng dự kiến

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 7

Tùy chỉnh trình đọc()

Theo mặc định, mô-đun

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 9 hoạt động và sinh hoạt giải trí theo định dạng được sử dụng bởi Microsoft excel, nhưng bạn cũng hoàn toàn có thể xác định định dạng của riêng mình bằng phương pháp sử dụng thứ gọi là Phương ngữ

Sau đây là một số trong những đối số tương hỗ update mà bạn hoàn toàn có thể chuyển đến hàm

import csv with open('employees.csv', 'rt') as f: csv_reader = csv.reader(f) next(csv_reader) # skip the heading for line in csv_reader: print(line[0], line[1], line[2]) 1 để tùy chỉnh hoạt động và sinh hoạt giải trí của nó
    id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 77 - Nó đề cập đến ký tự được sử dụng để phân tách những giá trị (hoặc trường) trong tệp CSV. Nó mặc định là dấu phẩy (id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 78)id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 79  - Nó trấn áp cách diễn giải khoảng chừng trắng sau dấu phân cách. Nếu True , khoảng chừng trắng ban đầu sẽ bị xóa. Nó mặc định là Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 00Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 01 - Nó đề cập đến chuỗi ký tự được sử dụng để kết thúc dòng. Nó mặc định là Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 02Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 03 - Nó đề cập đến chuỗi ký tự đơn sẽ được sử dụng để làm giá trị nếu những ký tự đặc biệt (như dấu phân cách) xuất hiện bên trong trường. Nó mặc định là Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 04Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 05  - trấn áp thời điểm trích dẫn nên được tạo bởi người viết hoặc được người đọc nhận ra. Nó hoàn toàn có thể lấy một trong những hằng số sau
      Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 06 nghĩa là chỉ thêm trích dẫn khi được yêu cầu, ví dụ: khi một trường chứa ký tự trích dẫn hoặc dấu phân cách. Đây là mặc địnhName,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 07 nghĩa là trích dẫn mọi thứ bất kể loại trườngName,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 08 nghĩa là trích dẫn mọi thứ trừ số nguyên và số thựcName,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 09 nghĩa là không trích dẫn bất kể điều gì trên đầu ra. Tuy nhiên, trong khi trích dẫn đọc được gồm có xung quanh những giá trị trường
    Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 10 - Nó đề cập đến chuỗi một ký tự được sử dụng để thoát khỏi dấu phân cách khi trích dẫn được đặt thành Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 11. Nó mặc định là Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 12Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 13  - trấn áp việc xử lý dấu ngoặc kép bên trong những trường. Khi Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 14, hai trích dẫn liên tục được hiểu là một trong khi đọc và khi viết, mỗi ký tự trích dẫn được nhúng trong tài liệu được ghi dưới dạng hai trích dẫn. Hãy xem qua một số trong những ví dụ để làm rõ hơn về phương pháp hoạt động và sinh hoạt giải trí của những đối số này

đối số dấu phân cách

nhân viên_pipe. csv

Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 0

Tệp này sử dụng ký tự ống (

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 8) làm dấu phân cách. Đây là cách đọc tệp CSV này

Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 1

Sản lượng dự kiến

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 2

đối số skipinitialspace

Người chơi bóng chày. csv

Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 3

Tệp CSV này chứa khoảng chừng trắng sau dấu phẩy (

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 78). Để đọc đúng chuẩn tệp CSV này, hãy đặt id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 79 thành Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 14, như sau

Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 4

Sản lượng dự kiến

Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 5

đối số quotechar

địa chỉ. csv

Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 6

Có hai điều cần lưu ý trong tập tin này. Đầu tiên, trường địa chỉ được bao bọc bằng phương pháp sử dụng dấu nháy đơn (

Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 19) thay vì dấu nháy kép Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 04 (là giá trị mặc định). Thứ hai, có tầm khoảng chừng trắng sau dấu phẩy (id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 78)

Nếu bạn nỗ lực đọc tệp này mà không thay đổi ký tự trích dẫn, bạn sẽ nhận được kết quả như sau

Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 7

Sản lượng dự kiến

Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 8

Lưu ý rằng địa chỉ được phân thành ba trường, điều này chắc như đinh không đúng chuẩn. Để khắc phục sự cố, chỉ việc thay đổi ký tự trích dẫn thành một trích dẫn (

Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 19) bằng phương pháp sử dụng đối số Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 03

Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 9

Sản lượng dự kiến

Id,User,Comment 1,Bob,"John said ""Hello World""" 2,Tom,""The Magician"" 0

đối số escapechar

phản hồi. csv

Id,User,Comment 1,Bob,"John said ""Hello World""" 2,Tom,""The Magician"" 1

Tệp này sử dụng ký tự dấu gạch chéo ngược (

Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 24) để thoát khỏi dấu ngoặc kép được nhúng. Tuy nhiên, theo mặc định, mô-đun id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 9 mặc định sử dụng ký tự trích dẫn kép để thoát khỏi ký tự trích dẫn kép

Nếu cố đọc tệp này bằng những tùy chọn mặc định, bạn sẽ nhận được đầu ra như vậy này

Id,User,Comment 1,Bob,"John said ""Hello World""" 2,Tom,""The Magician"" 2

Sản lượng dự kiến

Id,User,Comment 1,Bob,"John said ""Hello World""" 2,Tom,""The Magician"" 3

Đầu ra này chắc như đinh là không mong ước. Để có đầu ra đúng chuẩn, hãy thay đổi ký tự thoát bằng phương pháp sử dụng đối số

Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 10, như sau

Id,User,Comment 1,Bob,"John said ""Hello World""" 2,Tom,""The Magician"" 4

Sản lượng dự kiến

Id,User,Comment 1,Bob,"John said ""Hello World""" 2,Tom,""The Magician"" 5

trích dẫn kép đối số

đối thoại. csv

Id,User,Comment 1,Bob,"John said ""Hello World""" 2,Tom,""The Magician"" 6

Tệp này sử dụng dấu ngoặc kép để thoát khỏi những ký tự dấu ngoặc kép được nhúng trong trường. Theo mặc định,

Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 13 được đặt thành Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 14. Kết quả là, trong khi đọc hai dấu ngoặc kép liên tục được hiểu là một

Id,User,Comment 1,Bob,"John said ""Hello World""" 2,Tom,""The Magician"" 7

Sản lượng dự kiến

Id,User,Comment 1,Bob,"John said ""Hello World""" 2,Tom,""The Magician"" 8

Tuy nhiên, nếu bạn đặt

Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 13 thành Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 00, những dấu ngoặc kép liên tục sẽ xuất hiện ở đầu ra

Id,User,Comment 1,Bob,"John said ""Hello World""" 2,Tom,""The Magician"" 9

Sản lượng dự kiến

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 00

Viết tệp CSV bằng trình ghi ()

Để ghi tài liệu vào tệp CSV, chúng tôi sử dụng hiệu suất cao

import csv with open('employees.csv', 'rt') as f: csv_reader = csv.reader(f) next(csv_reader) # skip the heading for line in csv_reader: print(line[0], line[1], line[2]) 2. Nó đồng ý cùng một đối số như hàm import csv with open('employees.csv', 'rt') as f: csv_reader = csv.reader(f) next(csv_reader) # skip the heading for line in csv_reader: print(line[0], line[1], line[2]) 1 nhưng trả về một đối tượng người viết (i. e Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 33)

cú pháp.

Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 34

Đối sốMô tả

import csv with open('employees.csv', 'rt') as f: csv_reader = csv.reader(f) next(csv_reader) # skip the heading for line in csv_reader: print(line[0], line[1], line[2]) 9(bắt buộc) Nó đề cập đến đối tượng tệpid name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 70(tùy chọn) Phương ngữ đề cập đến những phương pháp rất khác nhau để định dạng tài liệu CSV. Theo mặc định, mô-đun id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 9 sử dụng định dạng in như Microsoft Excel. Chúng tôi sẽ thảo luận rõ ràng về phương ngữ sau trong nội dung bài viết này. id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 72(tùy chọn) Tham số định dạng, hoạt động và sinh hoạt giải trí in như hiệu suất cao của import csv with open('employees.csv', 'rt') as f: csv_reader = csv.reader(f) next(csv_reader) # skip the heading for line in csv_reader: print(line[0], line[1], line[2]) 1

Ví dụ nhà văn đáp ứng hai phương thức sau để ghi tài liệu

MethodDescription

Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 40Viết một hàng tài liệu và trả về số ký tự đã viết. Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 41 phải là một chuỗi những chuỗi và số. Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 42Ghi nhiều hàng tài liệu và trả về Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 12. Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 44 phải là một dãy

Đây là những ví dụ

ví dụ 1. Sử dụng

Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 45

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 01

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 02

ví dụ 2. Sử dụng

Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 46

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 03

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 04

Đầu ra được tạo bởi cả hai list sẽ giống nhau và có vẻ như như vậy này

người tiêu dùng. csv

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 05

Lưu ý rằng chỉ có trường địa chỉ được xung quanh dấu ngoặc kép. Điều này là vì theo mặc định, đối số

Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 05 được đặt thành Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 48. Nói cách khác, những trường sẽ chỉ được trích dẫn khi ký tự quote hoặc dấu phân cách xuất hiện trong tài liệu

Giả sử bạn muốn có dấu ngoặc kép xung quanh tất cả tài liệu văn bản. Để đạt được điều này, hãy đặt đối số

Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 05 thành Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 50

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 03

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 07

Sản lượng dự kiến

người tiêu dùng. csv

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 08

Bây giờ tất cả những tên và địa chỉ đều có dấu ngoặc kép xung quanh chúng

Nếu bạn muốn có dấu ngoặc kép quanh tất cả những trường bất kể ký tự trích dẫn hay dấu phân cách có xuất hiện trong tài liệu hay là không, hãy đặt

Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 05 thành Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 07

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 03

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 10

Sản lượng dự kiến

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 11

Bây giờ mọi thứ đều được trích dẫn kép

Điều quan trọng cần lưu ý là lúc trích dẫn được bật (i. e Tham số

Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 05 có mức giá trị khác với Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 09), mô-đun id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 9 sử dụng Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 03 (mặc định là Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 04) để trích dẫn trường

Danh sách sau đây thay đổi ký tự trích dẫn từ trích dẫn kép (______404) thành trích dẫn đơn (

Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 19)

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 03

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 13

Sản lượng dự kiến

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 14

Trong trường hợp này, mô-đun

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 9 sử dụng trích dẫn đơn (Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 19) thay vì (Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 04) để trích dẫn những trường chứa ký tự trích dẫn hoặc dấu phân cách

Chúng tôi cũng hoàn toàn có thể tắt trích dẫn tất cả cùng nhau bằng phương pháp đặt

Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 05 thành Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 09. Tuy nhiên, nếu bạn làm điều đó và ký tự phân cách xuất hiện trong tài liệu thì bạn sẽ gặp lỗi như vậy này

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 03

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 16

Sản lượng dự kiến

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 17

Vấn đề là trường địa chỉ chứa những dấu phẩy được nhúng (

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 78) và vì chúng tôi đã tắt kĩ năng trích dẫn những trường, nên mô-đun id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 9 không biết phương pháp thoát chúng đúng cách

Đây là lúc đối số

Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 10 phát huy tác dụng. Phải mất một chuỗi ký tự sẽ được sử dụng để thoát khỏi dấu phân cách khi tắt trích dẫn (i. e Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 68)

Danh sách sau đặt

Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 10 thành dấu gạch chéo ngược (Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 24)

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 03

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 19

Sản lượng dự kiến

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 20

Lưu ý rằng dấu phẩy (

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 78) trong trường địa chỉ được thoát bằng ký tự dấu gạch chéo ngược (Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 24)

Bây giờ bạn đã làm rõ về những đối số định dạng rất khác nhau và ngữ cảnh mà chúng được sử dụng với hàm

import csv with open('employees.csv', 'rt') as f: csv_reader = csv.reader(f) next(csv_reader) # skip the heading for line in csv_reader: print(line[0], line[1], line[2]) 1 và import csv with open('employees.csv', 'rt') as f: csv_reader = csv.reader(f) next(csv_reader) # skip the heading for line in csv_reader: print(line[0], line[1], line[2]) 2. Trong phần tiếp theo sẽ xem một số trong những cách khác để đọc và ghi tài liệu

Đọc tệp CSV bằng DictReader

Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 75 hoạt động và sinh hoạt giải trí gần như thể đúng chuẩn như import csv with open('employees.csv', 'rt') as f: csv_reader = csv.reader(f) next(csv_reader) # skip the heading for line in csv_reader: print(line[0], line[1], line[2]) 1 nhưng thay vì trả về một dòng dưới dạng list, nó trả về một từ điển. Cú pháp của nó như sau

cú pháp.

Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 77

Đối số Mô tả ____89(bắt buộc) Nó đề cập đến đối tượng tệp.

Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 79(tùy chọn) Nó đề cập đến list những khóa sẽ được sử dụng trong từ điển được trả về theo thứ tự. Nếu bị bỏ qua, tên trường được suy ra từ số 1 tiên của tệp CSV. Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 80(tùy chọn) Nếu hàng có nhiều trường hơn chỉ định trong tham số Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 79, thì những trường còn sót lại được tàng trữ dưới dạng chuỗi được khóa bởi giá trị của đối số Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 80. Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 83(tùy chọn) Nó đáp ứng giá trị cho những trường bị thiếu trong đầu vào. id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 70(tùy chọn) Phương ngữ đề cập đến những phương pháp rất khác nhau để định dạng tài liệu CSV. Theo mặc định, mô-đun id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 9 sử dụng định dạng in như Microsoft excel. Chúng tôi sẽ thảo luận rõ ràng về phương ngữ sau trong nội dung bài viết này. id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 72Nó đề cập đến những đối số định dạng và hoạt động và sinh hoạt giải trí đúng chuẩn như import csv with open('employees.csv', 'rt') as f: csv_reader = csv.reader(f) next(csv_reader) # skip the heading for line in csv_reader: print(line[0], line[1], line[2]) 1 và import csv with open('employees.csv', 'rt') as f: csv_reader = csv.reader(f) next(csv_reader) # skip the heading for line in csv_reader: print(line[0], line[1], line[2]) 2

Hãy lấy một số trong những ví dụ

ví dụ 1

người tiêu dùng. csv

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 20

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 22

Sản lượng dự kiến

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 23

Trong trường hợp này, tên trường được suy ra từ dòng đầu tiên (hoặc tiêu đề) của tệp CSV

ví dụ 2. Sử dụng tham số

Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 79

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 24

Tệp CSV này sẽ không còn tiêu đề. Vì vậy, chúng tôi phải đáp ứng tên trường thông qua tham số

Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 79

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 25

Sản lượng dự kiến

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 26

ví dụ 3. Sử dụng tham số

Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 80

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 24

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 28

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 29

Sản lượng dự kiến

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 30

Lưu ý rằng địa chỉ và mã zip hiện được tàng trữ dưới dạng chuỗi được khóa bởi giá trị

Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 92

Ví dụ 4. Sử dụng

Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 83

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 24

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 28

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 33

Sản lượng dự kiến

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 34

Trong trường hợp này, chúng tôi đã chỉ định trường thêm hai trường.

Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 94 và Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 95. Các giá trị cho những trường tương hỗ update được đáp ứng bởi đối số Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 83

Viết tệp CSV bằng DictWriter()

Đối tượng

Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 97 ghi từ điển vào tệp CSV. Cú pháp của nó như sau

cú pháp.

Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 98

Đối sốMô tả

import csv with open('employees.csv', 'rt') as f: csv_reader = csv.reader(f) next(csv_reader) # skip the heading for line in csv_reader: print(line[0], line[1], line[2]) 9Nó đề cập đến đối tượng tệpName,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 79Nó đề cập đến tên trường và thứ tự chúng sẽ được ghi vào tệp. Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 83Nó đáp ứng giá trị không đủ cho những khóa không tồn tại trong từ điển. Id,User,Comment 1,Bob,"John said ""Hello World""" 2,Tom,""The Magician"" 02Nó trấn áp hành vi cần thực hiện nếu từ điển chứa khóa, không tìm thấy trong đối số Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 79. Theo mặc định, Id,User,Comment 1,Bob,"John said ""Hello World""" 2,Tom,""The Magician"" 02 được đặt thành Id,User,Comment 1,Bob,"John said ""Hello World""" 2,Tom,""The Magician"" 05, nghĩa là một ngoại lệ sẽ được đưa ra trong trường hợp như vậy. Nếu bạn muốn bỏ qua những giá trị tương hỗ update, hãy đặt Id,User,Comment 1,Bob,"John said ""Hello World""" 2,Tom,""The Magician"" 02 thành Id,User,Comment 1,Bob,"John said ""Hello World""" 2,Tom,""The Magician"" 07

Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 97 đáp ứng ba phương thức sau để ghi tài liệu

MethodDescription

Id,User,Comment 1,Bob,"John said ""Hello World""" 2,Tom,""The Magician"" 09Viết tiêu đề (i. e Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 79) vào tệp CSV và trả về Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 12. Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 40Ghi một hàng tài liệu và trả về số ký tự đã viết. Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 41 phải là một chuỗi những chuỗi và số. Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 42Ghi nhiều hàng tài liệu và trả về Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 12. Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 44 phải là một dãy

Hãy lấy một số trong những ví dụ

ví dụ 1

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 35

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 36

Sản lượng dự kiến

người tiêu dùng độc tài. csv

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 05

ví dụ 2. Sử dụng

Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 83

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 35

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 39

Sản lượng dự kiến

người tiêu dùng độc tài. csv

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 0

Trong trường hợp này, giá trị của trường

Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 95 bị thiếu trong từ điển. Do đó, giá trị của Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 83 sẽ được sử dụng cho trường Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 95

ví dụ 3. Sử dụng

Id,User,Comment 1,Bob,"John said ""Hello World""" 2,Tom,""The Magician"" 02

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 1

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 2

Ở đây, từ điển chứa một khóa phụ tên là

Id,User,Comment 1,Bob,"John said ""Hello World""" 2,Tom,""The Magician"" 22 không còn trong list Id,User,Comment 1,Bob,"John said ""Hello World""" 2,Tom,""The Magician"" 23. Để ngăn ngoại lệ tăng lên, chúng tôi đã đặt Id,User,Comment 1,Bob,"John said ""Hello World""" 2,Tom,""The Magician"" 02 thành Id,User,Comment 1,Bob,"John said ""Hello World""" 2,Tom,""The Magician"" 07

Sản lượng dự kiến

người tiêu dùng độc tài. csv

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 3

Tạo phương ngữ

Trước đó trong bài đăng này, chúng tôi đã tìm hiểu những tham số định dạng rất khác nhau được cho phép chúng tôi tùy chỉnh đối tượng trình đọc và trình ghi để phù phù phù hợp với sự khác lạ trong những quy ước CSV

Nếu bạn thấy mình chuyển đi chuyển lại cùng một nhóm tham số định dạng. Cân nhắc việc tạo Phương ngữ của riêng bạn

Một đối tượng phương ngữ hoặc (đơn giản là phương ngữ) là một phương pháp để nhóm những tham số định dạng rất khác nhau. Khi bạn đã tạo đối tượng phương ngữ, chỉ việc chuyển đối tượng đó cho những người dân đọc hoặc người viết, thay vì chuyển riêng từng đối số định dạng

Để tạo một phương ngữ mới, tất cả chúng ta sử dụng hàm

Id,User,Comment 1,Bob,"John said ""Hello World""" 2,Tom,""The Magician"" 26. Nó đồng ý tên phương ngữ dưới dạng chuỗi và một hoặc nhiều tham số định dạng làm đối số từ khóa

Bảng sau đây liệt kê tất cả những đối số định dạng cùng với những giá trị mặc định của chúng

ArgumentDefaultDescription

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 77id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 78Nó đề cập đến ký tự được sử dụng để phân tách những giá trị (hoặc trường) trong tệp CSV. id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 79Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 00Nó trấn áp cách diễn giải khoảng chừng trắng sau dấu phân cách. Nếu Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 14, những khoảng chừng trắng ban đầu sẽ bị xóa. Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 01Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 02Nó đề cập đến chuỗi ký tự được sử dụng để kết thúc dòng. Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 03Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 04Nó đề cập đến chuỗi ký tự đơn sẽ được sử dụng để làm giá trị nếu những ký tự đặc biệt (như dấu phân cách) xuất hiện bên trong trường. Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 05Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 09kiểm soát khi trích dẫn nên được tạo bởi người viết hoặc được người đọc công nhận (xem ở trên để biết những tùy chọn khác). Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 10Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 12Nó đề cập đến chuỗi một ký tự được sử dụng để thoát khỏi dấu phân cách khi trích dẫn được đặt thành. Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 13Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 14kiểm soát việc xử lý dấu ngoặc kép bên trong những trường. Khi Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 14, hai trích dẫn liên tục được hiểu là một trong khi đọc và khi viết, mỗi ký tự trích dẫn được nhúng trong tài liệu được ghi dưới dạng hai trích dẫn

Hãy tạo một phương ngữ đơn giản

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 4

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 5

Sản lượng dự kiến

giải oscar. csv

id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 6

Hướng dẫn khác (Nhà tài trợ)

Trang web này được tương hỗ rộng rãi bởi DataCamp. DataCamp đáp ứng Hướng dẫn Python tương tác trực tuyến cho Khoa học tài liệu. Tham gia cùng hơn một triệu người học khác và khởi đầu học Python cho khoa học tài liệu ngay ngày hôm nay

Làm cách nào để quy đổi CSV sang txt bằng Python?

Để quy đổi CSV thành tệp TXT trong Python, hãy thực hiện tiến trình sau. . Mở tệp CSV ở chính sách đọc và tệp TXT ở chính sách ghi Đọc tệp CSV thành một chuỗi Tạo một chuỗi mới bằng phương pháp thay thế tất cả mỗi lần xuất hiện của dấu phân cách ',' bằng chuỗi trống '' Viết nội dung vào tệp TXT

Tệp CSV hoàn toàn có thể được phân tách bằng đường ống không?

Nó thậm chí còn được cho phép bạn quy đổi CSV thành TSV (giá trị được phân tách bằng tab) và CSV thành tệp văn bản được phân cách bằng dấu sổ . Tải thêm tài liệu liên quan đến nội dung bài viết Chuyển đổi CSV thành tệp văn bản được phân tách bằng đường ống Python programming python

Video Chuyển đổi CSV thành tệp văn bản được phân tách bằng đường ống Python ?

Bạn vừa tham khảo nội dung bài viết Với Một số hướng dẫn một cách rõ ràng hơn về Review Chuyển đổi CSV thành tệp văn bản được phân tách bằng đường ống Python tiên tiến nhất

Share Link Cập nhật Chuyển đổi CSV thành tệp văn bản được phân tách bằng đường ống Python miễn phí

Bạn đang tìm một số trong những Share Link Down Chuyển đổi CSV thành tệp văn bản được phân tách bằng đường ống Python Free.

Hỏi đáp thắc mắc về Chuyển đổi CSV thành tệp văn bản được phân tách bằng đường ống Python

Nếu sau khi đọc nội dung bài viết Chuyển đổi CSV thành tệp văn bản được phân tách bằng đường ống Python vẫn chưa hiểu thì hoàn toàn có thể lại phản hồi ở cuối bài để Tác giả lý giải và hướng dẫn lại nha #Chuyển #đổi #CSV #thành #tệp #văn #bản #được #phân #tách #bằng #đường #ống #Python