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

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

Trong bài viết này, chúng tôi sẽ thảo luận về bốn cách khác nhau để xóa nhiều ký tự khỏi một chuỗi trong Python.

Giả sử chúng ta có một chuỗi A & nbsp; Small & nbsp; mẫu & nbsp; chuỗi & nbsp; for & nbsp; thử nghiệm và một danh sách các ký tự cần bị xóa khỏi chuỗi, tức là.“A small sample String for testing” and a list of characters that need to be deleted from string i.e.

list_of_chars = ['s', 't', 'a', 'A', ' ']

Hãy cùng xem cách xóa các ký tự này khỏi chuỗi.

Xóa nhiều ký tự khỏi chuỗi bằng hàm dịch ()

Lớp chuỗi trong Python, cung cấp một hàm dịch (). Nó chấp nhận một bảng dịch như một đối số và thay thế các ký tự trong chuỗi dựa trên ánh xạ trong bảng dịch. Chúng ta có thể tạo một bảng dịch, trong đó mỗi ký tự mà chúng ta muốn bị xóa khỏi chuỗi, sẽ được ánh xạ tới một chuỗi trống. Giống,translate(). It accepts a translation table as an argument and replaces the characters in string based on the mapping in the translation table. We can create a translation table, where each character that we want to be deleted from string, will be mapped to an empty string. Like,

  • Giá trị ASCII của ‘Siêu:
  • Giá trị ASCII của ‘T,:
  • Giá trị ASCII của ‘A,:
  • Giá trị ASCII của ‘A,:
  • Giá trị ASCII của ‘‘:

Chúng tôi sẽ chuyển bảng dịch này để dịch () hàm như một cuộc tranh luận. Do đó hàm dịch () sẽ thay thế tất cả các lần xuất hiện của các ký tự này bằng một chuỗi trống. Về cơ bản, nó sẽ loại bỏ tất cả các lần xuất hiện của các ký tự này khỏi chuỗi. Ví dụ,

Quảng cáo

sample_str = 'A small sample String for testing'

# A list containing multiple characters, that needs to be deleted from the string.
list_of_chars = ['s', 't', 'a', 'A', ' ']

# Create a mapping table to map the characters 
# to be deleted with empty string
translation_table = str.maketrans('', '', ''.join(list_of_chars))

# Remove multiple characters from the string
sample_str = sample_str.translate(translation_table)

print(sample_str)

Output:

mllmpleSringforeing

Nó đã loại bỏ tất cả các lần xuất hiện của nhiều ký tự khỏi chuỗi.

Xóa nhiều ký tự khỏi chuỗi bằng cách sử dụng regex

Trong Python, mô -đun Regex cung cấp một hàm để thay thế nội dung của chuỗi dựa trên mẫu Regex phù hợp. Chữ ký của chức năng là như thế này,

sub(pattern, replacement_str, original_str)

Chúng ta có thể sử dụng điều này để loại bỏ nhiều ký tự khỏi một chuỗi. Đối với điều này, chúng ta cần vượt qua một mẫu regex phù hợp với tất cả các sự xuất hiện của các ký tự đã cho. Ngoài ra, như một chuỗi thay thế, chúng ta cần vượt qua một chuỗi trống. Ví dụ, hãy để Lừa xem cách xóa các ký tự ‘S,‘ T, ‘A, A,‘ A, và ‘‘ Từ một chuỗi sử dụng Regex, ‘s’, ‘t’, ‘a’, ‘A’ and ‘ ‘ from a string using regex,

import re

sample_str = 'A small sample String for testing'

# A list containing multiple characters, that needs to be deleted from the string.
list_of_chars = ['s', 't', 'a', 'A', ' ']

# Create regex pattern to match all characters in list
pattern = '[' +  ''.join(list_of_chars) +  ']'

# Remove multiple characters from the string
sample_str = re.sub(pattern, '', sample_str)

print(sample_str)

Output:

mllmpleSringforeing

Nó đã loại bỏ tất cả các lần xuất hiện của ‘S,‘ T, ‘A,’ A, một và ‘‘ Từ chuỗi.‘s’, ‘t’, ‘a’, ‘A’ and ‘ ‘ from the string.

Xóa nhiều ký tự khỏi chuỗi bằng cách sử dụng thay thế ()

Lớp chuỗi cung cấp một hàm để thay thế một chuỗi phụ trong một chuỗi, tức là.

str.replace(to_be_replaced, replacement)

Nó chấp nhận hai đối số, tức là chuỗi được thay thế và chuỗi thay thế. Nó trả về một bản sao của đối tượng chuỗi gọi nhưng với các nội dung đã thay đổi, tức là sau khi thay thế tất cả các lần xuất hiện của chuỗi phụ TO_BE_REPLACED bằng chuỗi thay thế đã cho. Vì vậy, để xóa nhiều ký tự khỏi một chuỗi bằng hàm thay thế (), hãy làm theo logic này:to_be_replaced with the given replacement string. So, to delete multiple characters from a string using replace() function, follow this logic:

Lặp lại tất cả các ký tự sẽ bị xóa và cho mỗi ký tự, hãy chuyển nó đến hàm thay thế () cùng với chuỗi trống. Ví dụ,

sample_str = 'A small sample String for testing'

# A list containing multiple characters, that needs to be deleted from the string.
list_of_chars = ['s', 't', 'a', 'A', ' ']

# Remove multiple characters from the string
for character in list_of_chars:
    sample_str = sample_str.replace(character, '')

print(sample_str)

Output:

mllmpleSringforeing

Nó đã loại bỏ tất cả các lần xuất hiện của nhiều ký tự, tức là ’s,’ t, ’a,’ a, một và từ chuỗi.

Xóa nhiều ký tự khỏi Chuỗi bằng Filter () và tham gia ()

Trong Python, bạn có thể sử dụng hàm Filter () để lọc tất cả các sự cố của một ký tự từ một chuỗi. Các bước như sau,

  • Tạo hàm Lambda, chấp nhận một ký tự như một đối số và chỉ trả về đúng nếu ký tự được truyền phù hợp với bất kỳ ký tự nào cần phải xóa.
  • Cùng với chuỗi được sửa đổi, chuyển hàm LAMBDA được tạo ở trên cho hàm Filter (), làm đối số có điều kiện.
  • Filter () Chức năng vòng lặp thông qua tất cả các ký tự của chuỗi và chỉ mang lại những ký tự mà hàm Lambda trả về đúng, tất cả các ký tự ngoại trừ các ký tự cần bị xóa.
  • Sử dụng hàm tham gia () để kết hợp tất cả các ký tự được trả về bởi hàm Filter ().
  • Gán lại chuỗi được nối được trả về bởi hàm nối () cho biến ban đầu. Nó sẽ cho một hiệu ứng mà chúng tôi đã xóa nhiều ký tự khỏi chuỗi.

Ví dụ,

sample_str = 'A small sample String for testing'

# A list containing multiple characters, that needs to be deleted from the string.
list_of_chars = ['s', 't', 'a', 'A', ' ']

# Filter multiple characters from string
filtered_chars = filter(lambda item: item not in list_of_chars, sample_str)

# Join remaining characters in the filtered list
sample_str = ''.join(filtered_chars)

print(sample_str)

Output:

mllmpleSringforeing

Summary:ummary:

Chúng tôi đã tìm hiểu về các cách khác nhau để xóa nhiều ký tự khỏi một chuỗi trong Python.

Làm cách nào để loại bỏ nhiều phần 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 () & maketrans ().
Sử dụng subn ().
Sử dụng phụ ().

Làm thế nào để bạn xóa nhiều mục khỏi một chuỗi?

Để xóa nhiều ký tự khỏi chuỗi, chúng ta có thể dễ dàng sử dụng hàm str.replace và truyền nhiều ký tự tham số.Lớp chuỗi (STR) cung cấp một phương thức để thay thế (old_str, new_str) để thay thế các chuỗi con trong một chuỗi.Nó thay thế tất cả các yếu tố của chuỗi phụ cũ bằng chuỗi phụ mới.use the function str. replace and pass a parameter multiple characters. The String class (Str) provides a method to replace(old_str, new_str) to replace the sub-strings in a string. It replaces all the elements of the old sub-string with the new sub-string.

Làm cách nào để loại bỏ các mục không mong muốn khỏi một chuỗi trong Python?

Trong Python, bạn có thể sử dụng các phương thức thay thế () và dịch () để chỉ định ký tự nào bạn muốn xóa khỏi chuỗi và trả về kết quả chuỗi được sửa đổi mới.Điều quan trọng cần nhớ là chuỗi ban đầu sẽ không bị thay đổi vì chuỗi là bất biến.use the replace() and translate() methods to specify which characters you want to remove from a string and return a new modified string result. It is important to remember that the original string will not be altered because strings are immutable.

Làm cách nào để loại bỏ nhiều yếu tố khỏi danh sách trong Python?

Xóa nhiều yếu tố khỏi danh sách theo phạm vi chỉ mục bằng DEL.Trong phương pháp này, chúng tôi sẽ sử dụng từ khóa DEL để xóa các phần tử của một phạm vi chỉ mục được chỉ định từ danh sách.Hàm này sẽ xóa tất cả các yếu tố từ Index1 đến Index2-1.using del. In this approach, we will use the del keyword to delete elements of a specified index range from the list. This function will delete all the elements from index1 to index2-1.