Làm cách nào để xóa văn bản khỏi tệp văn bản trong python?
Trong bài viết này, chúng tôi sẽ chỉ cho bạn cách xóa một dòng cụ thể/cụ thể khỏi tệp văn bản bằng python Show
Giả sử chúng tôi đã lấy một tệp văn bản có tên TextFile. txt bao gồm một số văn bản ngẫu nhiên. Chúng tôi sẽ xóa một dòng cụ thể (ví dụ dòng 2) khỏi tệp văn bản Tệp văn bản. txt Good Morning This is Tutorials Point sample File Consisting of Specific source codes in Python,Seaborn,Scala Summary and Explanation Welcome everyone Learn with a joy thuật toánSau đây là Thuật toán/các bước cần tuân thủ để thực hiện tác vụ mong muốn -
with open(inputFile, 'r') as filedata:
file.readlines(hint)
with open(inputFile, 'w') as filedata:
Thí dụChương trình sau để xóa một dòng đã cho khỏi tệp văn bản và in nội dung tệp kết quả sau khi xóa dòng đó - đầu raKhi thực thi, chương trình trên sẽ tạo đầu ra sau - Enter the line number to be deleted = 2 Line 2 is deleted successfully File Content After Deletion : Good Morning Consisting of Specific source codes in Python,Seaborn,Scala Summary and Explanation Welcome everyone Learn with a joy Chúng tôi đã cung cấp cho chương trình của mình một tệp văn bản chứa một số nội dung ngẫu nhiên và sau đó mở nó ở chế độ đọc. Chúng tôi đã tạo một biến để lưu trữ số dòng hiện tại và khởi tạo nó thành 1, số dòng bắt đầu. Chúng tôi duyệt qua tệp cho đến khi đến cuối, sau đó kiểm tra xem liệu số người dùng nhập vào có tương đương với số dòng sẽ bị xóa không. Nếu sai ta không cần xóa bỏ dòng đó mà ghi vào file. Thay vì xóa dòng đã chỉ định, chúng tôi thêm các dòng còn lại vào tệp, do đó dòng bị xóa không xuất hiện trong tệp kết quả. Đối với mỗi dòng, giá trị của số dòng được tăng thêm một Trong bài viết này, chúng ta đã tìm hiểu về cách xóa một dòng cụ thể khỏi tệp văn bản và lưu các dòng còn lại trong cùng một bài viết. Cùng với đó chúng ta đã học về cách duyệt toàn bộ tệp văn bản từ đầu đến cuối cũng như cách đọc và ghi dữ liệu vào tệp văn bản Bài viết này cho bạn biết cách xóa các dòng cụ thể khỏi một tệp trong Python. Ví dụ bạn muốn xóa dòng #5 và #12 Sau khi đọc bài viết này, bạn sẽ học được
Mục lục
Xóa các dòng khỏi tệp theo số dòngVui lòng làm theo các bước dưới đây để xóa các dòng cụ thể khỏi tệp văn bản theo số dòng. –
Thí dụ Đoạn mã sau cho biết cách xóa các dòng khỏi tệp văn bản theo số dòng trong Python. Xem tệp đính kèm được sử dụng trong ví dụ và hình ảnh hiển thị nội dung của tệp để tham khảo Trong ví dụ này, chúng tôi đang xóa dòng 5 và 8
Mã của chúng tôi đã xóa hai dòng. Đây là một dữ liệu hiện tại của một tập tin First line Second line Third line Fourth line Sixth line Seventh line Ghi chú Hàm First line Second line Third line Fourth line Sixth line Seventh line7 thêm bộ đếm vào một lần lặp (chẳng hạn như danh sách, chuỗi) và trả về nó trong đối tượng First line Second line Third line Fourth line Sixth line Seventh line9. Chúng tôi đã sử dụng đối tượng First line Second line Third line Fourth line Sixth line Seventh line9 với vòng lặp with open(inputFile, 'r') as filedata:21 để truy cập số dòng. First line Second line Third line Fourth line Sixth line Seventh line7 không tải toàn bộ danh sách trong bộ nhớ, vì vậy đây là một giải pháp hiệu quả Ghi chú. Không sử dụng từ khóa with open(inputFile, 'r') as filedata:23 để xóa các dòng khỏi danh sách và ghi chính danh sách đó vào tệp. Bởi vì khi bạn xóa một dòng khỏi danh sách, chỉ mục của mục đó sẽ bị thay đổi. Vì vậy, bạn sẽ không còn có thể xóa đúng dòng Sử dụng phương thức seek()Điều tương tự cũng có thể được thực hiện bằng cách sử dụng phương thức seek() bằng cách thay đổi vị trí con trỏ để chúng ta không cần mở tệp hai lần
Thí dụ with open(inputFile, 'r') as filedata:2 Xóa dòng đầu tiên và dòng cuối cùng của tệpĐể xóa có chọn lọc một số nội dung khỏi tệp, chúng ta cần sao chép nội dung của tệp ngoại trừ những dòng chúng tôi muốn xóa và ghi lại các dòng còn lại vào cùng một tệp Sử dụng các bước dưới đây để xóa dòng đầu tiên khỏi tệp
file.readlines(hint)2 đầu ra Trước khi xóa dòng đầu tiên First line Second line Third line Fourth line Sixth line Seventh line Sau khi xóa dòng đầu tiên file.readlines(hint)4 Để xóa N dòng đầu tiên, hãy sử dụng danh sách cắt file.readlines(hint)5 Nếu bạn đang đọc một tệp và không muốn đọc dòng đầu tiên, hãy sử dụng phương pháp bên dưới thay vì xóa một dòng khỏi tệp file.readlines(hint)6 Sử dụng ví dụ dưới đây để thực hiện các bước xóa dòng cuối cùng khỏi tệp file.readlines(hint)7 Để xóa N dòng cuối cùng, hãy sử dụng danh sách cắt file.readlines(hint)8 Xóa các dòng khớp với một văn bản (chuỗi)Giả sử các tệp chứa hàng trăm dòng và bạn muốn xóa các dòng khớp với chuỗi/văn bản đã cho. Hãy xem cách xóa các dòng khớp với văn bản đã cho (khớp chính xác) bước
ví dụ 1. Xóa các dòng khớp với văn bản đã cho (khớp chính xác) First line Second line Third line Fourth line Sixth line Seventh line0 Ngoài ra, bạn có thể đạt được nó bằng cách sử dụng vòng lặp đơn nên sẽ nhanh hơn nhiều First line Second line Third line Fourth line Sixth line Seventh line1 Xóa các dòng có chứa một từ cụ thểTrong một số trường hợp, chúng tôi có thể phải xóa các dòng khỏi tệp chứa từ khóa hoặc thẻ cụ thể. Hãy xem ví dụ để xóa các dòng khỏi tệp chứa một chuỗi cụ thể ở bất kỳ đâu trong dòng Thí dụ First line Second line Third line Fourth line Sixth line Seventh line2 Xóa các dòng bắt đầu bằng từ/chuỗi cụ thểTìm hiểu cách xóa các dòng khỏi tệp bắt đầu bằng một từ cụ thể. Trong ví dụ sau, chúng tôi sẽ xóa các dòng bắt đầu bằng từ ‘thời gian‘ Thí dụ First line Second line Third line Fourth line Sixth line Seventh line3 Xóa văn bản cụ thể khỏi tệp văn bảnCũng có thể xảy ra trường hợp bạn muốn xóa một chuỗi cụ thể khỏi một tệp chứ không phải dòng chứa chuỗi đó. Hãy xem ví dụ tương tự First line Second line Third line Fourth line Sixth line Seventh line4 Xóa tất cả các dòng khỏi một tệpĐể xóa tất cả các dòng trong một tệp và làm trống tệp, chúng ta có thể sử dụng phương thức truncate() trên đối tượng tệp. Phương thức truncate() xóa tất cả các dòng khỏi tệp và đặt con trỏ tệp về đầu tệp |