Hướng dẫn read file line by line and store in list python - đọc tệp từng dòng và lưu trữ trong python danh sách
Trong ví dụ này, bạn sẽ học cách đọc một dòng từng dòng vào một danh sách. Show
Để hiểu ví dụ này, bạn nên có kiến thức về các chủ đề lập trình Python sau:
Ví dụ 1: Sử dụng Readlines ()Đặt nội dung của tệp ['honda 1948\n', 'mercedes 1926\n', 'ford 1903'] ['honda 1948', 'mercedes 1926', 'ford 1903']1 honda 1948 mercedes 1926 ford 1903 Mã nguồn
Đầu ra ['honda 1948\n', 'mercedes 1926\n', 'ford 1903'] ['honda 1948', 'mercedes 1926', 'ford 1903'] ['honda 1948\n', 'mercedes 1926\n', 'ford 1903'] ['honda 1948', 'mercedes 1926', 'ford 1903']2 Trả về một danh sách các dòng từ tệp.
Ví dụ 2: Sử dụng cho vòng lặp và danh sách hiểu biết
Đầu ra ['honda 1948\n', 'mercedes 1926\n', 'ford 1903'] ['honda 1948', 'mercedes 1926', 'ford 1903'] ['honda 1948\n', 'mercedes 1926\n', 'ford 1903'] ['honda 1948', 'mercedes 1926', 'ford 1903']2 Trả về một danh sách các dòng từ tệp. Để đọc một tệp vào danh sách, bạn cần phải làm ba điều:
May mắn thay, Python làm cho nó rất dễ dàng để làm những việc này, vì vậy cách ngắn nhất để đọc tệp vào danh sách là:
Tuy nhiên tôi sẽ thêm một số lời giải thích. Mở tập tinTôi giả sử rằng bạn muốn mở một tệp cụ thể và bạn không giao dịch trực tiếp với tay cầm tệp (hoặc tay cầm giống như tệp). Chức năng được sử dụng phổ biến nhất để mở một tệp trong Python là ['honda 1948\n', 'mercedes 1926\n', 'ford 1903'] ['honda 1948', 'mercedes 1926', 'ford 1903']8, cần một đối số bắt buộc và hai đối số tùy chọn trong Python 2.7:
Tên tệp phải là một chuỗi đại diện cho đường dẫn đến tệp. Ví dụ:
Lưu ý rằng phần mở rộng tệp cần được chỉ định. Điều này đặc biệt quan trọng đối với người dùng Windows vì các phần mở rộng tệp như ['honda 1948\n', 'mercedes 1926\n', 'ford 1903'] ['honda 1948', 'mercedes 1926', 'ford 1903']9 hoặc 0, v.v. được ẩn theo mặc định khi được xem trong Explorer.Đối số thứ hai là 1, đó là 2 theo mặc định, có nghĩa là "chỉ đọc". Đó chính xác là những gì bạn cần trong trường hợp của bạn.Nhưng trong trường hợp bạn thực sự muốn tạo một tệp và/hoặc ghi vào một tệp, bạn sẽ cần một đối số khác ở đây. Có một câu trả lời tuyệt vời nếu bạn muốn có một cái nhìn tổng quan. Để đọc một tệp, bạn có thể bỏ qua 1 hoặc chuyển nó một cách rõ ràng:
Cả hai sẽ mở tệp ở chế độ chỉ đọc. Trong trường hợp bạn muốn đọc trong tệp nhị phân trên Windows, bạn cần sử dụng chế độ 4:
Trên các nền tảng khác, 5 (chế độ nhị phân) chỉ đơn giản là bị bỏ qua.Bây giờ tôi đã chỉ ra cách ['honda 1948\n', 'mercedes 1926\n', 'ford 1903'] ['honda 1948', 'mercedes 1926', 'ford 1903']8 tệp, hãy nói về thực tế là bạn luôn cần phải 7. Nếu không, nó sẽ giữ một tay cầm tệp mở cho tệp cho đến khi quá trình thoát ra (hoặc Python rác xử lý tệp).Trong khi bạn có thể sử dụng:
Điều đó sẽ không đóng tệp khi một cái gì đó giữa ['honda 1948\n', 'mercedes 1926\n', 'ford 1903'] ['honda 1948', 'mercedes 1926', 'ford 1903']8 và 7 ném một ngoại lệ. Bạn có thể tránh điều đó bằng cách sử dụng ['honda 1948\n', 'mercedes 1926\n', 'ford 1903'] ['honda 1948', 'mercedes 1926', 'ford 1903']0 và ['honda 1948\n', 'mercedes 1926\n', 'ford 1903'] ['honda 1948', 'mercedes 1926', 'ford 1903']1: 0Tuy nhiên, Python cung cấp các nhà quản lý bối cảnh có cú pháp đẹp hơn (nhưng đối với ['honda 1948\n', 'mercedes 1926\n', 'ford 1903'] ['honda 1948', 'mercedes 1926', 'ford 1903']8, nó gần giống với ['honda 1948\n', 'mercedes 1926\n', 'ford 1903'] ['honda 1948', 'mercedes 1926', 'ford 1903']0 và ['honda 1948\n', 'mercedes 1926\n', 'ford 1903'] ['honda 1948', 'mercedes 1926', 'ford 1903']1 ở trên): 1Cách tiếp cận cuối cùng là cách tiếp cận được đề xuất để mở một tập tin trong Python!recommended approach to open a file in Python! Đọc tập tinĐược rồi, bạn đã mở tệp, bây giờ làm thế nào để đọc nó? Hàm ['honda 1948\n', 'mercedes 1926\n', 'ford 1903'] ['honda 1948', 'mercedes 1926', 'ford 1903']8 trả về một đối tượng ['honda 1948\n', 'mercedes 1926\n', 'ford 1903'] ['honda 1948', 'mercedes 1926', 'ford 1903']6 và nó hỗ trợ giao thức lặp Pythons. Mỗi lần lặp sẽ cung cấp cho bạn một dòng: 2Điều này sẽ in từng dòng của tệp. Tuy nhiên, lưu ý rằng mỗi dòng sẽ chứa một ký tự mới ['honda 1948\n', 'mercedes 1926\n', 'ford 1903'] ['honda 1948', 'mercedes 1926', 'ford 1903']4 ở cuối (bạn có thể muốn kiểm tra xem Python của bạn có được xây dựng với hỗ trợ Newlines Universal hay không - nếu không bạn cũng có thể có ['honda 1948\n', 'mercedes 1926\n', 'ford 1903'] ['honda 1948', 'mercedes 1926', 'ford 1903']8 trên Windows hoặc ['honda 1948\n', 'mercedes 1926\n', 'ford 1903'] ['honda 1948', 'mercedes 1926', 'ford 1903']9 trên Mac làm Newlines). Nếu bạn không muốn rằng bạn có thể chỉ cần xóa ký tự cuối cùng (hoặc hai ký tự cuối cùng trên Windows): 3Nhưng dòng cuối cùng không nhất thiết phải có một dòng mới, vì vậy người ta không nên sử dụng nó. Người ta có thể kiểm tra xem nó có kết thúc bằng một dòng mới hay không và nếu loại bỏ nó: 4Nhưng bạn có thể chỉ cần loại bỏ tất cả các không gian trắng (bao gồm cả ký tự ['honda 1948\n', 'mercedes 1926\n', 'ford 1903'] ['honda 1948', 'mercedes 1926', 'ford 1903']4) từ cuối chuỗi, điều này cũng sẽ loại bỏ tất cả các không gian trắng kéo dài khác để bạn phải cẩn thận nếu những điều này quan trọng: 5Tuy nhiên, nếu các dòng kết thúc bằng ['honda 1948\n', 'mercedes 1926\n', 'ford 1903'] ['honda 1948', 'mercedes 1926', 'ford 1903']8 (Windows "Newlines") rằng 2 cũng sẽ chăm sóc ['honda 1948\n', 'mercedes 1926\n', 'ford 1903'] ['honda 1948', 'mercedes 1926', 'ford 1903']9! Lưu trữ nội dung như danh sáchMay mắn thay, Python làm cho nó rất dễ dàng để làm những việc này, vì vậy cách ngắn nhất để đọc tệp vào danh sách là: 6Tuy nhiên tôi sẽ thêm một số lời giải thích. 7Mở tập tin 8Tôi giả sử rằng bạn muốn mở một tệp cụ thể và bạn không giao dịch trực tiếp với tay cầm tệp (hoặc tay cầm giống như tệp). Chức năng được sử dụng phổ biến nhất để mở một tệp trong Python là ['honda 1948\n', 'mercedes 1926\n', 'ford 1903'] ['honda 1948', 'mercedes 1926', 'ford 1903']8, cần một đối số bắt buộc và hai đối số tùy chọn trong Python 2.7: Tên tệp 9or: ['honda 1948\n', 'mercedes 1926\n', 'ford 1903'] ['honda 1948', 'mercedes 1926', 'ford 1903']0 Chúng tự động chăm sóc các dòng mới của Trailing vì ký tự 0 không được bao gồm. Tuy nhiên, chúng không lý tưởng vì bạn giữ tệp như chuỗi và như một danh sách các dòng trong bộ nhớ!Bản tóm tắt
Làm thế nào để bạn đọc một tập tin trong Python và lưu trữ nó trong một danh sách?Bạn có thể đọc một tệp văn bản bằng các phương thức Open () và Readlines (). Để đọc một tệp văn bản vào một danh sách, hãy sử dụng phương thức Split (). Phương pháp này chia các chuỗi vào một danh sách tại một nhân vật nhất định. Trong ví dụ trên, chúng tôi chia một chuỗi thành một danh sách dựa trên vị trí của dấu phẩy và một không gian (Hồi,,).use the split() method. This method splits strings into a list at a certain character. In the example above, we split a string into a list based on the position of a comma and a space (“, ”).
Làm thế nào để bạn đọc một dòng tệp văn bản từng dòng và lưu trữ nó trong Python?Chương trình Python đọc một dòng tệp từng dòng vào một danh sách.. Đầu tiên, mở tệp và đọc tệp bằng readlines () .. Nếu bạn muốn xóa các dòng mới ('\ n'), bạn có thể sử dụng dải () .. Làm thế nào để bạn đọc một tệp văn bản vào một danh sách trong Python?Ví dụ 1: Chuyển đổi tệp văn bản thành danh sách bằng cách chia văn bản về sự xuất hiện của '.'.Chúng tôi mở tệp trong chế độ đọc, sau đó đọc tất cả văn bản bằng cách đọc () và lưu trữ nó vào một biến có tên là dữ liệu.Sau đó, chúng tôi thay thế phần cuối của dòng ('/n') bằng '' và chia văn bản hơn nữa khi '.
Phương pháp nào được sử dụng để đọc từng dòng trong từng dòng trong Python?Phương thức Python Readline () Phương thức read () Phương thức trả về một dòng từ tệp.Bạn cũng có thể chỉ định số lượng byte từ dòng để trả về, bằng cách sử dụng tham số kích thước.readline() Method
The readline() method returns one line from the file. You can also specified how many bytes from the line to return, by using the size parameter. |