Hướng dẫn how do you read all data from a text file in python? - làm thế nào để bạn đọc tất cả dữ liệu từ một tệp văn bản trong python?
Bạn đang ở đây: Trang chủ/ Python/ Làm thế nào để đọc toàn bộ tệp văn bản trong Python?Home / Python / How to read entire text file in Python? Show Ngày 5 tháng 1 năm 2018 bởi cmdlinetipscmdlinetips Thông thường người ta có thể cần đọc toàn bộ nội dung của tệp văn bản (hoặc tệp phẳng) cùng một lúc trong Python. Trong bài đăng này, chúng tôi đã cho thấy một ví dụ về việc đọc toàn bộ tệp và đọc từng dòng tệp văn bản. Dưới đây là một cách khác để nhập toàn bộ nội dung của tệp văn bản. # Open a file: file file = open('my_text_file',mode='r') # read all lines at once all_of_it = file.read() # close the file file.close() Bài viết liên quan:Ngày 18 tháng 4 năm 2022 Các tệp ở khắp mọi nơi: trên máy tính, thiết bị di động và trên đám mây. Làm việc với các tệp là điều cần thiết cho mọi lập trình viên, bất kể ngôn ngữ lập trình nào mà bạn sử dụng. Xử lý tệp là một cơ chế để tạo tệp, ghi dữ liệu và đọc dữ liệu từ nó. Tin tốt là Python được làm phong phú với các gói để xử lý các loại tệp khác nhau. Trong hướng dẫn này, chúng tôi sẽ học cách xử lý các tệp thuộc các loại khác nhau. Tuy nhiên, chúng tôi sẽ tập trung nhiều hơn vào việc đọc các tệp với Python. Sau khi bạn hoàn thành hướng dẫn này, bạn sẽ biết cách làm như sau:
Hãy để lặn trong. Mở một tập tinTrước khi truy cập nội dung của một tệp, chúng ta cần mở tệp. Python cung cấp một chức năng tích hợp giúp chúng tôi mở các tệp ở các chế độ khác nhau. Hàm 6 chấp nhận hai tham số cần thiết: tên tệp và chế độ; Chế độ mặc định là 7, chỉ mở tệp để đọc. Các chế độ xác định cách chúng ta có thể truy cập một tệp và cách chúng ta có thể thao tác nội dung của nó. Hàm 6 cung cấp một vài chế độ khác nhau mà chúng tôi sẽ thảo luận sau trong hướng dẫn này.Đầu tiên, hãy để thử chức năng bằng cách mở một tệp văn bản. Tải xuống tệp văn bản chứa Zen of Python và lưu trữ nó trong cùng một đường dẫn với mã của bạn.
Trong mã trên, hàm 6 mở tệp văn bản ở chế độ đọc, cho phép chúng tôi lấy thông tin từ tệp mà không vô tình thay đổi nó. Trong dòng đầu tiên, đầu ra của hàm 6 được gán cho biến 1, một đối tượng đại diện cho tệp văn bản. Trong dòng thứ hai của mã ở trên, chúng tôi sử dụng phương thức 2 để đọc toàn bộ tệp và in nội dung của nó. Phương thức 3 đóng tệp trong dòng cuối cùng. Chúng tôi phải luôn đóng các tệp đã mở sau khi chúng tôi hoàn thành chúng để phát hành tài nguyên máy tính của mình và tránh nêu ra các ngoại lệ.Trong Python, chúng tôi có thể sử dụng Trình quản lý bối cảnh 5 để đảm bảo chương trình phát hành các tài nguyên được sử dụng sau khi tệp được đóng, ngay cả khi xảy ra ngoại lệ. Hãy thử nó:
Mã trên tạo ra một bối cảnh bằng cách sử dụng câu lệnh 5 rằng đối tượng tệp không còn mở ra khỏi ngữ cảnh. Biến ràng buộc, 1, đại diện cho đối tượng tệp mà tất cả các phương thức đối tượng tệp có thể truy cập được thông qua biến. Phương thức 2 đọc toàn bộ tệp trong dòng thứ hai và sau đó hàm 8 xuất ra nội dung tệp.Khi chương trình đi đến cuối bối cảnh khối câu lệnh 5, nó sẽ đóng tệp để phát hành tài nguyên và đảm bảo rằng các chương trình khác có thể sử dụng chúng. Nói chung, sử dụng câu lệnh 5 là một thông lệ rất được khuyến khích khi bạn làm việc với các đối tượng cần được đóng ngay khi chúng không còn cần thiết, chẳng hạn như tệp, cơ sở dữ liệu và kết nối mạng.Lưu ý rằng chúng tôi có quyền truy cập vào biến 1 ngay cả sau khi thoát khỏi khối Trình quản lý bối cảnh 5; Tuy nhiên, tập tin được đóng. Hãy để thử một số thuộc tính đối tượng tệp để xem biến có còn tồn tại và có thể truy cập không:
Tuy nhiên, nó không thể đọc được từ tệp hoặc ghi vào tệp. Khi một tệp được đóng, mọi nỗ lực truy cập nội dung của nó sẽ dẫn đến lỗi sau:
Chế độ tập tin trong PythonNhư chúng tôi đã đề cập trong phần trước, chúng tôi cần chỉ định chế độ trong khi mở tệp. Bảng sau đây hiển thị các chế độ tệp khác nhau trong Python:
Chúng tôi cũng có thể chỉ định mở một tệp ở chế độ văn bản, 8, chế độ mặc định hoặc chế độ nhị phân, 9. Hãy để xem cách chúng ta có thể sao chép một tệp hình ảnh, dataquest_logo.png, sử dụng các câu lệnh đơn giản:
Mã trên sao chép hình ảnh logo DataQuest và lưu trữ nó trong cùng một đường dẫn. Chế độ 0 mở tệp để đọc ở chế độ nhị phân và chế độ 1 mở tệp để viết ở chế độ văn bản.Đọc tệp văn bảnCó nhiều cách khác nhau để đọc tệp văn bản. Phần này sẽ xem xét một số phương pháp hữu ích để đọc nội dung của các tệp văn bản. Cho đến nay, chúng tôi đã học được toàn bộ nội dung của một tệp có thể được đọc bằng phương pháp 2. Điều gì sẽ xảy ra nếu chúng ta chỉ muốn đọc một vài byte từ một tệp văn bản. Để làm điều đó, chỉ định số byte trong phương thức 2. Hãy thử nó: 0 1Mã đơn giản ở trên đọc 17 byte đầu tiên của tệp zen_of_python.txt và in chúng ra. Đôi khi, việc đọc nội dung của tệp văn bản một dòng tại một thời điểm có ý nghĩa hơn. Trong trường hợp này, chúng ta có thể sử dụng phương pháp 4. Hãy làm nó: 2 3Mã trên trả về dòng đầu tiên của tệp. Nếu chúng ta gọi phương thức thêm một lần nữa, nó sẽ trả về dòng thứ hai trong tệp, v.v., như sau: 4 5Phương pháp hữu ích này giúp chúng tôi đọc toàn bộ tệp tăng dần. Mã sau đây xuất ra toàn bộ tệp bằng cách lặp qua dòng nó cho đến khi con trỏ tệp theo dõi nơi chúng tôi đọc hoặc viết tệp đến cuối tệp. Khi phương thức 4 đi đến cuối tệp, nó sẽ trả về một chuỗi trống, ________ 66.with Open (‘zen_of_python.txt,) như f: 6
Mã trên đọc dòng đầu tiên của tệp bên ngoài vòng lặp và gán nó cho biến 7. Bên trong vòng lặp trong khi nó in chuỗi được lưu trữ trong biến 7, sau đó đọc dòng tiếp theo của tệp. Vòng lặp trong khi lặp lại quá trình cho đến khi phương thức 4 trả về một chuỗi trống. Chuỗi trống đánh giá thành 0 trong vòng lặp, do đó quá trình lặp lại chấm dứt.Phương pháp hữu ích khác để đọc tệp văn bản là phương thức 1. Áp dụng phương thức này trên một đối tượng tệp Trả về danh sách các chuỗi chứa từng dòng của tệp. Hãy để xem cách thức hoạt động của nó: 8Hãy để kiểm tra kiểu dữ liệu của biến 2 và sau đó in nó: 9 0Nó có một danh sách các chuỗi trong đó mỗi mục trong danh sách là một dòng của tệp văn bản. Nhân vật thoát 3 đại diện cho một dòng mới trong tệp. Ngoài ra, chúng tôi có thể truy cập mọi mục trong danh sách bằng cách lập chỉ mục hoặc cắt các hoạt động: 1 2Đọc các tập tin CSVCho đến nay, chúng tôi đã học được cách làm việc với các tệp văn bản thông thường. Tuy nhiên, đôi khi dữ liệu có định dạng CSV và nó phổ biến cho các chuyên gia dữ liệu để truy xuất thông tin cần thiết và thao tác nội dung của các tệp CSV. Chúng tôi sẽ sử dụng mô -đun CSV trong phần này. Mô-đun CSV cung cấp các phương pháp hữu ích để đọc các giá trị được phân tách bằng dấu phẩy được lưu trữ trong tệp CSV. Chúng tôi sẽ thử nó ngay bây giờ, nhưng trước tiên, bạn cần tải xuống tệp 4 và lưu trữ nó trong thư mục làm việc hiện tại: 3 4Mỗi hàng của tệp CSV tạo thành một danh sách trong đó mọi mục có thể dễ dàng truy cập, như sau: 5 6Nó có thể sử dụng tên của các cột thay vì sử dụng các chỉ số của chúng, thường thuận tiện hơn cho các nhà phát triển. Trong trường hợp này, thay vì sử dụng phương pháp 5, chúng tôi sử dụng phương thức 6 trả về một tập hợp các đối tượng từ điển. Hãy thử nó: 7 8Đọc các tập tin JSONMột định dạng tệp phổ biến khác mà chúng tôi chủ yếu sử dụng để lưu trữ và trao đổi dữ liệu là JSON. JSON là viết tắt của ký hiệu đối tượng JavaScript và nó cho phép chúng tôi lưu trữ dữ liệu với các cặp giá trị khóa được phân tách bằng dấu phẩy. Trong phần này, chúng tôi sẽ tải một tệp JSON và làm việc với nó dưới dạng đối tượng JSON - không phải là tệp văn bản. Để làm điều đó, chúng tôi cần nhập mô -đun JSON. Sau đó, trong Trình quản lý bối cảnh 5, chúng tôi sử dụng phương thức 8 thuộc về đối tượng 9. Nó tải nội dung tệp và lưu trữ nó trong biến 0 dưới dạng từ điển. Hãy để thử nó, nhưng trước khi chạy mã, hãy tải xuống tệp 1 và đưa nó vào thư mục làm việc hiện tại. 9 0Hãy để kiểm tra kiểu dữ liệu của biến 2: 1 2Kiểu dữ liệu của nó là một từ điển. Vì vậy, chúng tôi có thể truy cập từng mẩu thông tin được lưu trữ trong tệp JSON với khóa của nó. Hãy để xem cách chúng ta có thể lấy dữ liệu từ nó: 3 4Sự kết luậnHướng dẫn này đã thảo luận về việc xử lý tệp trong Python, tập trung vào việc đọc nội dung của các tệp. Bạn đã tìm hiểu về chức năng tích hợp mở (), với trình quản lý bối cảnh và cách đọc các loại tệp phổ biến như văn bản, CSV và JSON. |