如何從 Python 字符串中刪除字符

介紹

本文介紹了兩種使用Python刪除字符串中字符的常見方法:

  • String replace() 方法
  • String translate() 方法

要了解在Python中刪除字符串中空格的一些不同方法,請參閱在Python中刪除字符串中的空格

A Python String object is immutable, so you can’t change its value. Any method that manipulates a string value returns a new String object.

本教程中的示例使用Python交互式控制台在命令行中演示刪除字符的不同方法。

使用DigitalOcean App Platform從GitHub部署您的Python應用程序。讓DigitalOcean專注於擴展您的應用程序。

使用replace()方法從字符串中刪除字符

String replace() 方法可以將字串中的字元替換為新的字元。您可以通過將要替換的字元作為第一個參數,將空字串作為第二個參數來從字串中刪除字元。

聲明字串變量:

  1. s = 'abc12321cba'

用空字串替換字元:

  1. print(s.replace('a', ''))

輸出結果為:

Output
bc12321cb

該輸出顯示,字元a的兩個出現都從字串中刪除了。

使用 replace() 方法從字串中刪除換行字元

聲明帶有一些換行字元的字串變量:

  1. s = 'ab\ncd\nef'

將換行字元替換為空字串:

  1. print(s.replace('\n', ''))

輸出結果為:

Output
abcdef

該輸出顯示,兩個換行字元 (\n) 都從字串中刪除了。

使用 replace() 方法從字串中刪除子字串

replace() 方法接受字符串作為參數,因此您也可以在字符串中替換單詞。

宣告字符串變量:

  1. s = 'Helloabc'

用空字符串替換一個單詞:

  1. print(s.replace('Hello', ''))

輸出為:

Output
abc

輸出顯示字符串Hello從輸入字符串中被刪除。

使用replace() 方法指定字符替換特定次數

您可以在replace() 方法中傳遞第三個參數,以指定在停止之前在字符串中執行的替換次數。例如,如果您將2指定為第三個參數,則只有給定字符的前2個出現會被替換。

宣告字符串變量:

  1. s = 'abababab'

將字符的前兩個出現替換為新字符:

  1. print(s.replace('a', 'A', 2)) # 替換兩次

輸出為:

Output
AbAbabab

輸出顯示第一個字符a的兩個出現被字符A替換了。由於替換僅執行了兩次,字符串中的其他a保留了下來。

使用translate()方法從字符串中刪除字符

Python字符串translate()方法使用給定的映射表或字典替換字符串中的每個字符。

聲明一個字符串變量:

  1. s = 'abc12321cba'

獲取字符的Unicode編碼點值並將其替換為None

  1. print(s.translate({ord('b'): None}))

輸出結果為:

Output
ac12321ca

輸出結果顯示,字符串中定義的自定義字典中的b字符的兩個出現均已被刪除。

使用translate()方法從字符串中刪除多個字符

您可以使用translate()方法替換字符串中的多個字符。 以下示例使用自定義字典{ord(i): None for i in 'abc'},將給定字符串中所有abc的出現替換為None

聲明字符串變量:

  1. s = 'abc12321cba'

將所有字符abc替換為None

  1. print(s.translate({ord(i): None for i in 'abc'}))

The output is:

Output
12321

輸出顯示,根據自定義字典的定義,字符串中所有abc的出現都被刪除。

使用translate()方法從字符串中刪除換行符號

您可以使用translate()方法替換字符串中的換行符號。以下示例使用自定義字典{ord('\n'): None},將給定字符串中的所有\n替換為None

聲明字符串變量:

  1. s = 'ab\ncd\nef'

將所有\n字符替換為None

  1. print(s.translate({ord('\n'): None}))

輸出為:

Output
abcdef

輸出顯示,根據自定義字典的定義,字符串中所有換行字符\n的出現都被刪除。

結論

在本教程中,您學到了一些在Python中從字符串中刪除字符的方法。繼續學習有關Python字符串的知識。

Source:
https://www.digitalocean.com/community/tutorials/python-remove-character-from-string