Hướng dẫn how do i remove words from a string in python? - làm cách nào để xóa các từ khỏi một chuỗi trong python?

Nhìn vào các câu trả lời khác cho câu hỏi của bạn, tôi nhận thấy rằng họ đã nói với bạn cách thực hiện những gì bạn đang cố gắng làm, nhưng họ không trả lời câu hỏi bạn đặt ra ở cuối.

Nếu truy vấn đầu vào là "Hello là gì", tôi sẽ nhận được đầu ra như:

>>> "My, ! Hello  friendly stery"
4

Lý do tại sao điều này xảy ra?

Điều này xảy ra bởi vì .replace () thay thế cho bộ nền mà bạn cung cấp chính xác.

Ví dụ:

"My, my! Hello my friendly mystery".replace("my", "")

gives:

>>> "My, ! Hello  friendly stery"

.replace () về cơ bản là phân tách chuỗi bằng cách cung cấp dưới dạng tham số đầu tiên và nối lại với tham số thứ hai.

"hello".replace("he", "je")

tương tự về mặt logic với:

"je".join("hello".split("he"))

Nếu bạn vẫn muốn sử dụng .replace để loại bỏ toàn bộ từ, bạn có thể nghĩ rằng việc thêm một không gian trước và sau là đủ, nhưng điều này để lại các từ ở đầu và cuối chuỗi cũng như các phiên bản bị nhấn của chuỗi con.

"My, my! hello my friendly mystery".replace(" my ", " ")
>>> "My, my! hello friendly mystery"

"My, my! hello my friendly mystery".replace(" my", "")
>>> "My,! hello friendlystery"

"My, my! hello my friendly mystery".replace("my ", "")
>>> "My, my! hello friendly mystery"

Ngoài ra, việc thêm không gian trước và sau sẽ không bắt được các bản sao vì nó đã xử lý chuỗi phụ đầu tiên và sẽ bỏ qua nó để tiếp tục tiếp tục:

"hello my my friend".replace(" my ", " ")
>>> "hello my friend"

Vì những lý do này, câu trả lời được chấp nhận của bạn bởi Robby Cornelissen là cách được khuyến nghị để làm những gì bạn đang muốn.

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

print("Enter the String: ")
text = input()

print("Enter a Word to Delete: ")
word = input()

text = text.replace(word, "")

print()
print(text)

Để 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:

Hướng dẫn how do i remove words from a string in python? - làm cách nào để xóa các từ khỏi một chuỗi trong python?

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:

text = text.replace(word, "")

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:

print("Enter String: ", end="")
text = input()

print("Enter a Word to Delete: ", end="")
word = input()

wordlist = text.split()
if word in wordlist:
    text = text.replace(word, "\b")
    print("\nNew String without \"" +word+ "\":")
    print(text)
else:
    print("\n\"" +word+ "\" is not found in the string!")

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:

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:

Danh sách có tên WordList được tạo bằng các giá trị (phần tử) của nó như:wordlist is created with its values (elements) as:

['this', 'is', 'python', 'programming']

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.The "\b" is used to insert backspace on output. This escape character is used to shift upcoming thing from here to one space back.

Xóa Word khỏi chuỗi bằng danh sách

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:list. Let's have a look at the program first:

>>> "My, ! Hello  friendly stery"
0

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:welcome to codescracker to learn Python as string and to as word to delete:

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

>>> "My, ! Hello  friendly stery"
1

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

>>> "My, ! Hello  friendly stery"
2

Phiên bản sửa đổi của chương trình trước:

Đâ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:join() method in this program used in a way that, the list newtext is converted into a string:

>>> "My, ! Hello  friendly stery"
3

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


«Chương trình chương trình trước đây» Next Program »



Làm cách nào để loại bỏ một số từ nhất định khỏi một chuỗi?

Cho một chuỗi và một từ mà tác vụ xóa từ khỏi chuỗi nếu nó tồn tại khác trả về -1 dưới dạng đầu ra ...
Chuyển đổi chuỗi thành một mảng chuỗi ..
Lặp lại mảng và kiểm tra từ không bằng từ đã cho ..
Concatenate từ vào một tên mảng chuỗi mới dưới dạng chuỗi mới ..
In chuỗi mới ..

Làm cách nào để loại bỏ nhiều từ khỏi chuỗi trong Python?

Xóa nhiều ký tự khỏi một chuỗi trong Python..
Sử dụng thay thế lồng nhau ().
Sử dụng dịch () và maketrans ().
Sử dụng mạng con ().
Sử dụng phụ ().