Lưu tệp csv vào Desktop Python
Xin chào. Tôi là Greg Sadetsky và tôi dạy các lớp Python tại ProTech. Hôm nay, chúng ta sẽ làm một chút về lập trình Python. Hướng dẫn này được thiết kế cho bất kỳ ai quan tâm đến Python, có ít hoặc không có kinh nghiệm và tò mò muốn tìm hiểu những gì có thể với một vài kỹ năng lập trình cơ bản Show Bạn có thể xem hướng dẫn đầy đủ bên dưới hoặc bỏ qua từng phần riêng lẻ, ngay sau mục lục Mục lục
Giới thiệu về Python cho người mới bắt đầuĐây là một tình huống ví dụ. bạn là người tổ chức một bữa tiệc và đã tổ chức sự kiện này được hai năm. Bạn có tệp CSV (các giá trị được phân tách bằng dấu phẩy) cho cả hai năm liệt kê những người tham dự mỗi năm. Bạn muốn biết những người tham dự nào đã tham dự lần thứ hai, nhưng không phải lần đầu tiên Thiết lập môi trường để đọc tệp CSV PythonChúng tôi đang có một khởi đầu tuyệt vời. sai. bạn đã cài đặt Python trên máy tính của mình chưa? Người dùng Windows nên làm theo bài viết này để cài đặt nó. Khuyến nghị của tôi là lấy 2 bản mới nhất. 7 phiên bản (2. 7. 6 chẳng hạn) Khi bạn đã chạy chương trình thực thi Python, bạn sẽ thấy một dòng bắt đầu bằng ba dấu lớn hơn. Nó sẽ trông giống thế này
Điều đó thật tuyệt. Hãy thử một số phép tính cơ bản, chẳng hạn như nhập vào 9 và nhấn phím Enter. Khi bạn đã thấy thông dịch viên trả lời lại, bạn có thể thoát khỏi nó bằng cách nhập 0 và nhấn EnterMở tệp CSV bằng PythonTạo một tệp văn bản mới trong trình chỉnh sửa yêu thích của bạn và đặt cho nó một cái tên hợp lý, chẳng hạn như new_attendees. py. Các. phần mở rộng py là điển hình của các tệp chương trình Python Chúng tôi sẽ sử dụng các tệp dữ liệu CSV mẫu sau (tất cả tên và email của người tham dự được tạo ngẫu nhiên). người tham dự1. csv và người tham dự2. csv. Hãy tiếp tục và tải các tệp này xuống máy tính của bạn. Đặt chúng trong cùng thư mục chứa tệp chương trình của bạn, new_attendees. py, cuộc sống Python cho phép bạn mở các tệp văn bản như thế này và đọc nội dung của chúng, tất cả cùng một lúc hoặc từng dòng một. Trong trường hợp tệp CSV, chúng tôi sẽ sử dụng một mô-đun được tích hợp sẵn trong Python để đơn giản hóa quá trình phân tích cú pháp của chúng. Mô-đun trong câu hỏi được gọi đơn giản là csv Chúng tôi sẽ cần một số thứ để bắt đầu. đầu tiên, vì chúng tôi sẽ sử dụng mô-đun csv trong mã của mình, chúng tôi cần cho Python biết về điều này. Mặc dù Python cung cấp cho bạn một số mô-đun tích hợp, nhưng bạn cần khai báo rõ ràng những mô-đun nào bạn sẽ sử dụng. Đây sẽ trở thành dòng đầu tiên của chương trình của chúng tôi
Bây giờ chúng tôi đã sẵn sàng để viết phần còn lại của chương trình. Chúng tôi sẽ mở tệp CSV điểm danh đầu tiên, lưu trữ tham chiếu đến tệp đang mở này dưới dạng 1 và sau đó chuyển tham chiếu này đến mô-đun csv. Cụ thể, hàm 2 sẽ phân tích cú pháp tệp đang mở và trả về danh sách các hàng được phân tích cú pháp. Đây là những gì nó muốn cho đến nay
Để chạy chương trình này, trong thiết bị đầu cuối của bạn, hãy vào thư mục chứa tệp chương trình Python và tệp CSV của người tham dự, rồi nhập 3Lặp qua các hàng của tệp CSV PythonMặc dù mã ở trên là hợp lệ, nhưng có một chút không hài lòng vì nó không xuất bất kỳ dữ liệu nào, khiến bạn hơi khó theo dõi. Hãy in ra các hàng có trong tệp CSV bằng cách lặp qua danh sách 4 0Bạn sẽ thấy rằng chúng tôi đã thêm hai dòng -- một là vòng lặp for xác định rằng đối với các dòng được thụt lề sau, biến 5 sẽ chứa từng phần tử trong danh sách và dòng thứ hai (được thụt vào, vì chúng tôi muốn dòng này đổi lại chúng ta được gì? 3Danh sách này nên tiếp tục và tiếp tục. Vâng, đó là danh sách những người tham dự từ những người tham dự1. tệp csv. hoan hô Trích xuất thông tin từ tệp CSV PythonMỗi hàng mà chúng tôi đang lặp qua là một đối tượng danh sách ( 4 là một danh sách các danh sách). Chúng ta có thể thấy các danh sách này (tương ứng với các hàng trong tệp CSV của người tham dự) được tạo thành từ ba thành phần, thành phần thứ ba là địa chỉ email mà chúng tôi muốn sử dụng để so sánh những người tham dựTrong Python, dấu ngoặc vuông được sử dụng để truy cập một phần tử nằm ở vị trí nào đó ("chỉ mục") trong danh sách. Cụ thể, đối với danh sách 8 chứa 9, chúng tôi sẽ viết 00 để truy cập phần tử đầu tiên của nó (danh sách Python được lập chỉ mục 0, giống như trong nhiều ngôn ngữ lập trình khác -- xem phần này). Tất cả cùng nhau, như một ví dụ khác, để in phần tử "thứ 2" (theo cách nói của con người) của một danh sách, bạn sẽ viết 8Điều này sẽ in ra màu xanh lá cây Quay lại tệp CSV người tham dự của chúng tôi, để in ra địa chỉ e-mail của mọi người tham dự, chúng tôi sẽ sửa đổi mã một chút để có được 9Chạy mã này và bạn sẽ thấy địa chỉ e-mail của mọi người tham dự được in ra. gần như ở đó Tạo danh sách cho tệp CSV bằng PythonChúng tôi đã thành công trong việc truy cập và in địa chỉ email từ mọi hàng trong tệp CSV. Bây giờ chúng ta hãy tạo một đối tượng danh sách trống mà chúng ta sẽ điền các địa chỉ e-mail đó. Điều này, một lần nữa, là để cho phép chúng tôi so sánh những người tham dự năm đầu tiên với những người tham dự năm thứ hai. Điều đầu tiên trước tiên -- hãy tạo một danh sách trống. Một danh sách trống được gán cho một biến bằng cách viết như sau 0Để nối các phần tử vào danh sách này (vì một phần tử trống sẽ không được sử dụng nhiều), chúng ta sẽ sử dụng phương thức 01 của danh sách. Xem xét danh sách đã tạo ở trên, thêm một chuỗi vào nó sẽ trông như thế này 2Nó có hoạt động không? 3chúng ta nên xem 0i. e, một danh sách có một phần tử trong đó. Tuyệt quá. Sửa đổi mã mà chúng tôi đã làm việc cho đến nay mang lại cho chúng tôi điều này 1Sau khi chạy, mã này sẽ in một danh sách (sẽ xuất hiện dưới dạng một dòng dài) với tất cả email của những người tham dự. Có gì thiếu không? . tệp csv). Chúng ta nên thực hiện quá trình xử lý tương tự (i. e. , trích xuất địa chỉ e-mail) trên tệp thứ hai Để giữ cho ví dụ này đơn giản, chúng tôi đã quyết định sao chép mã xử lý tệp người tham dự1. csv và thực hiện các thao tác gần như tương tự cho người tham dự2. csv. Một lời cảnh báo. Việc sao chép và dán mã như chúng tôi sẽ thực hiện bên dưới được coi là thông lệ không tốt. Chúng tôi đang làm điều đó ở đây để giữ cho mã có thể đọc được -- cách điển hình và tốt hơn là loại bỏ những điểm chung của mã đang được sao chép/dán và đặt mã đó vào một khối có thể tái sử dụng (một chức năng). Vì vậy, hãy nhớ rằng chúng tôi đang hy sinh chất lượng mã để dễ hiểu Sau khi được sửa đổi, mã ở trên hiện thực hiện các bước tương tự cho cả hai người tham dự1. csv và người tham dự2. tệp csv 2Chuyển đổi danh sách thành bộ cho Tệp CSV PythonCòn hai bước nữa. Trước tiên, chúng tôi sẽ chuyển đổi các danh sách mà chúng tôi có (______102 và 03) thành các bộ. Tập hợp là một kiểu dữ liệu hơi giống danh sách, ở chỗ nó lưu trữ một số đối tượng, nhưng có điểm khác biệt là các đối tượng không có thứ tự và tất cả các đối tượng chứa trong đó là duy nhất. Vì vậy, một tập hợp có thể chứa 2, 5, 4 (không theo thứ tự cụ thể) nhưng không chứa 2, 2, 4, 6, 6 vì các tập hợp chỉ chứa các giá trị duy nhấtBằng cách chuyển đổi danh sách của chúng tôi thành bộ, chúng tôi sẽ có khả năng so sánh các giá trị của hai danh sách. Để chuyển đổi một danh sách thành một tập hợp, chỉ cần chuyển danh sách tới hàm set(). Như vậy 3sẽ dẫn đến đầu ra sau 4Bạn có thể nhận thấy rằng giá trị 5 chỉ xuất hiện một lần trong tập hợp của chúng tôi, mặc dù nó đã xuất hiện hai lần trong my_list. Việc thêm các hoạt động chuyển đổi đã đặt vào mã của chúng tôi sẽ cho chúng tôi 5Xuất ra sự khác biệt giữa 2 bộMột bước cuối cùng. Chúng tôi đã tạo các bộ địa chỉ email của những người tham dự cụ thể để so sánh chúng. Hãy làm điều đó. Các bộ hỗ trợ nhiều thao tác, một trong số đó sẽ cho chúng ta biết phần tử nào của một bộ không có trong một bộ khác. Hãy thử một ví dụ đơn giản bằng cách tạo hai bộ 6Như mong đợi, kết quả phải là 1, 7, 8, 9. Lưu ý rằng thứ tự xuất hiện của các phần tử kết quả này có thể trông khác -- điều này là do các tập hợp không có thứ tự Chúng tôi thấy rằng việc gọi phương thức 04 chỉ thực hiện những gì chúng tôi muốn làm với địa chỉ e-mail của những người tham dự của chúng tôi. Vì vậy, không cần phải chần chừ thêm nữa, hãy tiếp tục và xác định xem ai đã tham dự bữa tiệc thứ hai và không có mặt tại bữa tiệc thứ nhất 7Bạn sẽ thấy một bộ gồm 19 địa chỉ email được in ra. Chúng ta làm được rồi. hoan hô. Bất kỳ câu hỏi? Muốn tìm hiểu thêm? ProTech cung cấp khóa đào tạo Python riêng, được cung cấp tại chỗ hoặc trực tuyến cho các nhóm từ 4 người trở lên, cũng như các lớp học dành cho công chúng |