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
- 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áchDò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] 9Trướ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]) 4Hã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ư saucú 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] 1Sản lượng dự kiến
id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 2Lư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] 3Sả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] 7Tù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
đố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" 0Tệ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àyName,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 1Sả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" 3Tệ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ư sauName,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 4Sả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" 6Có 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" 7Sả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" 8Lư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" 03Name,Age,Address Jerry,10,"2776 McDowell Street, Nashville, Tennessee" Tom,20,"3171 Jessie Street, Westerville, Ohio" Mike,30,"1818 Sherman Street, Hope, Kansas" 9Sả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"" 1Tệ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épNế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"" 2Sả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ư sauId,User,Comment 1,Bob,"John said ""Hello World""" 2,Tom,""The Magician"" 4Sản lượng dự kiến
Id,User,Comment 1,Bob,"John said ""Hello World""" 2,Tom,""The Magician"" 5trích dẫn kép đối số
đối thoại. csv
Id,User,Comment 1,Bob,"John said ""Hello World""" 2,Tom,""The Magician"" 6Tệ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ộtId,User,Comment 1,Bob,"John said ""Hello World""" 2,Tom,""The Magician"" 7Sản lượng dự kiến
Id,User,Comment 1,Bob,"John said ""Hello World""" 2,Tom,""The Magician"" 8Tuy 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 raId,User,Comment 1,Bob,"John said ""Hello World""" 2,Tom,""The Magician"" 9Sản lượng dự kiến
id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 00Viế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]) 1Ví 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" 45id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 01id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 02ví 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" 46id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 03id 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] 05Lư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ệuGiả 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" 50id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 03id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 07Sả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] 08Bâ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" 07id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 03id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 10Sản lượng dự kiến
id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 11Bâ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ườngDanh 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] 03id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 13Sản lượng dự kiến
id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 14Trong 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áchChú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àyid name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 03id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 16Sản lượng dự kiến
id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 17Vấ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] 03id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 19Sản lượng dự kiến
id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 20Lư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ư saucú 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]) 2Hã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] 20id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 22Sản lượng dự kiến
id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 23Trong 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" 79id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 24Tệ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" 79id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 25Sản lượng dự kiến
id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 26ví 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" 80id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 24id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 28id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 29Sản lượng dự kiến
id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 30Lư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" 92Ví 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" 83id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 24id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 28id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 33Sản lượng dự kiến
id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 34Trong 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" 83Viế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ư saucú 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"" 07Name,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ệuMethodDescription
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ãyHã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] 35id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 36Sả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] 05ví 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" 83id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 35id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 39Sả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] 0Trong 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" 95ví dụ 3. Sử dụng
Id,User,Comment 1,Bob,"John said ""Hello World""" 2,Tom,""The Magician"" 02id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 1id 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"" 07Sả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] 3Tạ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óaBả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ẫnHã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] 4id name email 1 John [email protected] 2 Bob [email protected] 3 Mary [email protected] 5Sả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] 6Hướ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
Post a Comment