Hướng dẫn how do you remove a specific word from a text file in python? - làm cách nào để xóa một từ cụ thể khỏi tệp văn bản trong python?

Đối với OP, phương pháp của Ross Patterson ở trên hoạt động hoàn hảo cho tôi, tức là

infile = "messy_data_file.txt"
outfile = "cleaned_file.txt"

delete_list = ["word_1", "word_2", "word_n"]
fin = open(infile)
fout = open(outfile, "w+")
for line in fin:
    for word in delete_list:
        line = line.replace(word, "")
    fout.write(line)
fin.close()
fout.close()

Example:

Tôi có một tệp có tên Messy_Data_File.txt bao gồm các từ sau (động vật), không nhất thiết phải trên cùng một dòng. Như thế này:

Goat
Elephant
Horse Donkey Giraffe
Lizard
Bird
Fish

Khi tôi sửa đổi mã để đọc (thực sự chỉ cần thêm các từ để xóa vào dòng "xóa_list"):

infile = "messy_data_file.txt"
outfile = "cleaned_file.txt"

delete_list = ["Donkey", "Goat", "Fish"]
fin = open(infile)
fout = open(outfile, "w+")
for line in fin:
    for word in delete_list:
       line = line.replace(word, "")
    fout.write(line)
fin.close()
fout.close()

Kết quả "Cleaned_file.txt" trông như thế này:

Elephant
Horse  Giraffe
Lizard
Bird

Có một dòng trống trong đó "Dê" được sử dụng (nơi, kỳ lạ, loại bỏ "con lừa" không) nhưng với mục đích của tôi, điều này hoạt động tốt.

Tôi cũng thêm đầu vào ("Nhấn Enter vào EXIT ...") Phần cuối của mã để giữ cho cửa sổ dòng lệnh không mở và đóng vai , nhưng hãy lưu ý rằng bạn sẽ không gặp lỗi theo cách này.input("Press Enter to exit...") the the very end of the code to keep the command line window from opening and slamming shut on me when I'm double-clicking the remove_text.py file to run it, but take note that you'll catch no errors this way.

Để làm điều đó, tôi chạy nó từ dòng lệnh (trong đó C: \ Just_Testing là thư mục nơi tất cả các tệp của tôi, tức là remove_text.py và messy_text.txt) như thế này:

C:\Just_Testing\>py remove_text.py 

hoặc

C:\Just_Testing>python remove_text.py 

hoạt động chính xác giống nhau.

Tất nhiên, như khi viết HTML, tôi đoán sẽ không bao giờ đau khi sử dụng một con đường đủ điều kiện khi chạy PY hoặc Python từ một nơi nào đó khác ngoài thư mục bạn tình cờ đang ngồi, chẳng hạn như:

C:\Windows\System32\>python C:\Users\Me\Desktop\remove_text.py

Tất nhiên trong mã sẽ là:

infile = "C:\Users\Me\Desktop\messy_data_file.txt"
outfile = "C:\Users\Me\Desktop\cleaned_file.txt"

Hãy cẩn thận sử dụng cùng một đường dẫn đủ điều kiện để đặt mới Cleaned_file.txt của bạn vào hoặc nó sẽ được tạo ra bất cứ nơi nào bạn có thể và điều đó có thể gây nhầm lẫn khi tìm kiếm nó.

Cá nhân, tôi có đường dẫn trong các biến môi trường của mình được đặt để trỏ đến tất cả các cài đặt Python của tôi, tức là C: \ Python3.5.3, C: \ Python2.7.13, v.v. để tôi có thể chạy PY hoặc Python từ bất cứ đâu.

Dù sao, tôi hy vọng thực hiện các điều chỉnh tinh chỉnh cho mã này từ ông Patterson có thể giúp bạn chính xác những gì bạn cần. :)

.

  • Không xác định.py
  • Ngày 10 tháng 10 năm 2021

Bằng cách sử dụng phương thức thay thế (), bạn có thể xóa một cụm từ hoặc văn bản khỏi một tệp.

Hãy xem cách sử dụng nó.

Xóa văn bản khỏi tệp

Trước khi viết mã của chúng tôi, hãy xem đầu ra tệp.txt.file.txt output.

file.txt:

Python is an interpreted, high-level and general-purpose programming language.

Mã trên sẽ xóa Python khỏi tệp.Python from the file.


# Read file.txt
with open('file.txt', 'r') as file:
    text = file.read()


# Delete text and Write
with open('file.txt', 'w') as file:
    # Delete
    new_text = text.replace('Python', '')
    # Write
    file.write(new_text)


Hãy để tôi giải thích

  1. Mở tệp và đọc nó
  2. Xóa JavaScript sau đó, viết đầu raJavascript then, writing the output

file.txt:

Goat
Elephant
Horse Donkey Giraffe
Lizard
Bird
Fish
0

Như bạn có thể thấy, JavaScript đã bị xóa.Javascript has been deleted.

Bài viết này được tạo để bao gồm một số chương trình trong Python, loại bỏ một từ cụ thể (được nhập bởi người dùng) khỏi một chuỗi (được nhập bởi người dùng). Dưới đây là danh sách các phương pháp được sử dụng để thực hiện nhiệm vụ:

  • Xóa một từ khỏi chuỗi bằng cách sử dụng thay thế ()replace()
  • Sử dụng danh sách

Xóa một từ khỏi chuỗi bằng cách sử dụng thay thế ()

Sử dụng danh sách

Goat
Elephant
Horse Donkey Giraffe
Lizard
Bird
Fish
1

Để xóa hoặc xóa một từ mong muốn khỏi một câu hoặc chuỗi đã cho trong Python, bạn phải yêu cầu từ người dùng nhập chuỗi và sau đó yêu cầu nhập từ có trong chuỗi để xóa tất cả sự xuất hiện của từ đó khỏi chuỗi và In chuỗi mới như được hiển thị trong chương trình được đưa ra dưới đây:

Dưới đây là đầu ra ban đầu được sản xuất bởi chương trình Python này:welcome to codescracker as string, then to as word to delete. Here is the sample output with exactly same input:

Bây giờ cung cấp đầu vào Say Chào mừng bạn đến CodeScracker dưới dạng chuỗi, sau đó là từ để xóa. Dưới đây là đầu ra mẫu có đầu vào chính xác:

Goat
Elephant
Horse Donkey Giraffe
Lizard
Bird
Fish
2

Từ trên chương trình, mã sau (câu lệnh):word gets replaced with "" (nothing) in given string stored in text. That is, in place of every word's value, nothing ("") gets placed. In this way, the word gets deleted or removed

nói rằng giá trị của từ được thay thế bằng "" (không có gì) trong chuỗi đã cho được lưu trữ trong văn bản. Đó là, thay cho giá trị của mỗi từ, không có gì ("") được đặt. Theo cách này, từ bị xóa hoặc xóa

Phiên bản sửa đổi của chương trình trướcend used in this program, to skip inserting an automatic newline using print(). The + is used to concatenate string. And the \" is used to print " on output:

Goat
Elephant
Horse Donkey Giraffe
Lizard
Bird
Fish
3

Kết thúc được sử dụng trong chương trình này, để bỏ qua việc chèn một dòng mới tự động bằng print (). + Được sử dụng để kết hợp chuỗi. Và \ "được sử dụng để in" trên đầu ra:this is python programming, then word input as python:

Hướng dẫn how do you remove a specific word from a text file in python? - làm cách nào để xóa một từ cụ thể khỏi tệp văn bản trong python?

Dưới đây là mẫu chạy mẫu của nó với đầu vào chuỗi vì đây là lập trình Python, sau đó là đầu vào từ như Python:codescracker:

Dưới đây là một mẫu khác chạy với cùng một chuỗi đầu vào, nhưng đầu vào từ như CodeScracker:The split() method splits the string into words.

Lưu ý - phương thức chia () chia chuỗi thành các từ.text are this is python programming, then after executing the following code:

Ví dụ: nếu chuỗi được lưu trữ trong văn bản thì đây là lập trình Python, thì sau khi thực thi mã sau:wordlist is created with its values (elements) as:

Goat
Elephant
Horse Donkey Giraffe
Lizard
Bird
Fish
4

Danh sách có tên WordList được tạo bằng các giá trị (phần tử) của nó như:The "\b" is used to insert backspace on output. This escape character is used to shift upcoming thing from here to one space back.

Lưu ý - "\ b" được sử dụng để chèn backspace vào đầu ra. Nhân vật thoát này được sử dụng để chuyển điều sắp tới từ đây sang một không gian trở lại.

Xóa Word khỏi chuỗi bằng danh sáchlist. Let's have a look at the program first:

Goat
Elephant
Horse Donkey Giraffe
Lizard
Bird
Fish
5

Chương trình này thực hiện cùng một công việc, nghĩa là xóa Word khỏi một chuỗi, nhưng sử dụng danh sách. Trước tiên hãy xem chương trình:welcome to codescracker to learn Python as string and to as word to delete:

Dưới đây là mẫu chạy mẫu của nó với đầu vào của người dùng, chào mừng bạn đến CodeScracker để tìm hiểu Python dưới dạng chuỗi và theo cách xóa:

Goat
Elephant
Horse Donkey Giraffe
Lizard
Bird
Fish
6

Từ chương trình trên, tuyên bố sau:

Goat
Elephant
Horse Donkey Giraffe
Lizard
Bird
Fish
7

là dạng ngắn của khối mã sau:

Phiên bản sửa đổi của chương trình trước:join() method in this program used in a way that, the list newtext is converted into a string:

Goat
Elephant
Horse Donkey Giraffe
Lizard
Bird
Fish
8

Đây là phiên bản sửa đổi của chương trình trước. Phương thức tham gia () trong chương trình này được sử dụng theo cách mà danh sách newtext được chuyển đổi thành một chuỗi:

Dưới đây là chạy mẫu của nó với cùng đầu vào của người dùng như chạy mẫu của chương trình trước đây:

  • Cùng một chương trình bằng các ngôn ngữ khác
  • Java loại bỏ từ khỏi câu
  • C Xóa từ khỏi câu

C ++ Xóa Word khỏi câu


Thử nghiệm trực tuyến Python Next Program »


Làm thế nào để bạn xóa một từ cụ thể khỏi một tệp trong Python?

Xóa một từ khỏi chuỗi bằng cách sử dụng thay thế () + được sử dụng để kết hợp chuỗi. Và \ "được sử dụng để in" trên đầu ra: print ("enter string:", end = "") text = input () print ("nhập từ để xóa:", end = "") word = input ( ) WordList = Text. split () nếu word trong danh sách từ: text = text.using replace() The + is used to concatenate string. And the \" is used to print " on output: print("Enter String: ", end="") text = input() print("Enter a Word to Delete: ", end="") word = input() wordlist = text. split() if word in wordlist: text = text.

Làm thế nào để bạn xóa một cái gì đó từ một tệp văn bản trong Python?

Điều tương tự cũng có thể được thực hiện bằ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 ...
Mở tệp trong chế độ đọc và ghi (r+).
Đọc tất cả các dòng từ một tệp vào danh sách ..
Di chuyển con trỏ tệp đến đầu tệp bằng phương thức Seek () ..
Cắt ngắn tệp bằng phương thức cắt ngắn () ..

Làm thế nào để bạn loại bỏ các từ không mong muốn khỏi một câu trong Python?

Chúng ta có thể sử dụng hàm thay thế () để xóa từ khỏi chuỗi trong python.Hàm này thay thế một chuỗi con nhất định với chuỗi con được đề cập.Chúng ta có thể thay thế một từ bằng một ký tự trống để loại bỏ nó.Chúng tôi cũng có thể chỉ định có bao nhiêu lần xuất hiện của một từ chúng tôi muốn thay thế trong hàm.use the replace() function to remove word from string in Python. This function replaces a given substring with the mentioned substring. We can replace a word with an empty character to remove it. We can also specify how many occurrences of a word we want to replace in the function.

Làm thế nào để bạn xóa một ký tự khỏi một tệp trong Python?

Python loại bỏ ký tự khỏi chuỗi bằng cách sử dụng thay thế (), chúng ta có thể sử dụng chức năng String thay thế () để thay thế một ký tự bằng một ký tự mới.Nếu chúng tôi cung cấp một chuỗi trống làm đối số thứ hai, thì ký tự sẽ bị xóa khỏi chuỗi.using replace() We can use string replace() function to replace a character with a new character. If we provide an empty string as the second argument, then the character will get removed from the string.