Python 空字符串:用例子解釋

您一直在 Python 之旅中漫遊,通過列表切片,馴服那些狂野的元組,甚至可能與一些討厭的面向對象概念搏鬥。但是現在,您偶然發現了一個看似簡單但令人驚訝的偷偷摸摸的生物:空字符串。

空字符串是不包含任何字符的字符串。可以在 Python 中使用 str() 函數或用單引號或雙引號分配變量來創建空字符串。len() 函數或 eq 運算符等方法可以識別字符串何時為空或不為空。

作為 Python 開發人員,您應該認識到分配和識別空字符串的簡單方法和更複雜的方法。本文向您展示了多個示例。

您還將學習基本操作,例如去除空白、連接和處理數據結構中的空字符串。

讓我們開始吧!

目錄

在 Python 中創建空字符串的 3 種方法

Python 空字符串:用例子解釋

空字符串是沒有字符或空格的字符串。它可以通過多種方式創建並分配給變量:

  • 使用單引號或雙引號分配給變量。

  • 使用str()函數。

  • 使用空字符串的format()函數。

1.單引號或雙引號

使用引號可能是創建空字符串最常見和最直接的方法。您可以使用單引號或雙引號。

下面是一些示例代碼,用於演示將空字符串分配給兩個字符串變量。

empty_string1 = ''
empty_string2 = ""

2. Str() 函數

str ()函數是一個內置的 Python 函數。當您不帶任何參數使用它時,它會返回一個空的 Python 字符串。

empty_string3 = str() 

3.格式()函數

Python 中的format ()方法是一種字符串方法,用於將指定值格式化為字符串。您可以將它與文字空白字符串一起使用,如以下代碼片段所示:

empty_string4 = "".format()

識別空字符串的 3 種簡單方法

Python 空字符串:用例子解釋

您有多種選擇來使用 Python 代碼識別空字符串。以下是三種最簡單的方法:

  1. 等式運算符 (==)

  2. Len() 函數

  3. 不是運算符

1. 情商算子

您可以使用eq 運算符將字符串變量與帶引號的空字符串進行比較以檢查是否相等。此代碼片段說明瞭如何:

if str1 == "": 
     print("The string is empty")

2.len()函數

len ()函數返回 Python 字符串的長度。如果長度為零,則字符串為空。

此代碼檢查零長度字符串:

if len(some_string) == 0:
     print("The string is empty.")

如果您認為空白字符串中可能有前導或尾隨空白字符,您可以在檢查其長度之前使用strip()方法。上面的代碼修改成這樣:

if len(some_string.strip()) == 0:
     print("The string is empty.")

3.不是運營商

在 Python 中,空字符串被認為是“ falsy ”,這意味著它們在布爾上下文中的計算結果為False 。非空字符串的計算結果為True

以下是如何使用 not 運算符檢查虛假值:

if not some_string:
     print("The string is empty.")

如何使用列表理解來檢查空字符串

Python 空字符串:用例子解釋

這個方法有自己的部分,因為它比我們上面展示的三個簡單方法更複雜!

您還可以使用 Python 列表理解來檢查給定列表中的任何字符串是否為空或非空。假設您有以下字符串列表:

list_of_products = ['Hoodie', '', 'T-Shirt', '', 'Jeans']

使用列表理解來檢查每個字符串是否為空:

is_empty = [s == '' for s in list_of_products]

is_empty變量現在將是一個布爾值列表。如果值返回True,則它是一個空字符串。如果它返回 False,則它是一個非空字符串。

當您打印is_empty變量時,您將看到以下輸出:

  • [假,真,假,真,假]

換句話說,五個中的三個值具有非零大小,兩個值是空的。

如何從字符串中去除空格

我們已經提到了strip()函數,它是一種用於刪除前導和尾隨空格的內置方法。

請注意,strip()不只是消除空格。它還從輸入字符串中刪除製表符和換行符。

這是一個帶有五個空格的變量的基本用法示例:

text = "    "
trimmed_text = text.strip()

trimmed_text 變量將包含一個空字符串,因為原始字符串只有空格。

剝離空白是數據整理中的一項常見任務。查看此視頻了解更多功能:

3 個常見的 Python 空字符串操作

您將經常對空字符串執行幾種常見操作。這些操作的行為可能並不總是直觀的,特別是對於那些剛接觸編程的人來說。

了解它們有助於防止錯誤和混淆。我們將更深入地研究這三個操作:

  1. 串聯和復制

  2. 轉換為其他數據類型

  3. 插入數據結構

1.連接和復制

Python 空字符串:用例子解釋

雖然空字符串本身不包含任何字符,但它仍然可以用於與其他字符串的運算。使用 + 運算符的連接將簡單地返回另一個字符串:w

s = "" + "Hello"  # s is now "Hello"

類似地,使用 * 運算符多次復制空字符串仍將導致空字符串:

s = "" * 5  # s is still ""

您可能不打算複製空字符串。但是,如果您在復制後調試意外的空結果,那麼首先檢查原始變量是否為空是值得的!

2. 轉換為其他數據類型

空字符串可以轉換為某些其他數據類型。例如,將空字符串轉換為列表時,結果是一個空列表:

l = list("")  # l is now []

但是,嘗試使用 int(“”) 或 float(“”) 將空字符串轉換為整數或浮點數將引發 ValueError。

3.插入數據結構

空字符串可以像任何其他字符串一樣插入到各種數據結構中。它們可以是列表的元素、字典中的值等。

my_list = ["", "T-Shirts", ""]
my_dict = {"key1": "", "key2": "T-Shirts"}

但是,使用空字符串作為字典鍵時要小心。雖然這在技術上是可行的,但如果您不小心,它可能會造成混淆並導致錯誤。

最後的想法

空字符串雖然看似簡單,但在 Python 編程中可能會帶來各種挑戰和注意事項。通過了解如何創建、識別和處理它們,您可以更好地編寫乾淨、高效且無錯誤的代碼(使用此備忘單以獲得更多幫助)。

您應該遵循並練習本文中的示例,以熟悉在數據結構中在串聯中使用空字符串以及轉換為其他數據類型。

這會增加您的 Python 熟練程度工具包,並使您在成為專家級 Python 開發人員的道路上走得更遠

Leave a Comment

在 Power Automate 中執行直到循環控制

在 Power Automate 中執行直到循環控制

了解有關 Do Until 循環控制如何在 Power Automate 流中工作的基礎過程,並熟悉所需的變量。

使用 Deneb 為 LuckyTemplates 製作自定義視覺對象

使用 Deneb 為 LuckyTemplates 製作自定義視覺對象

受限於 LuckyTemplates 中提供的標準視覺效果?學習使用 Deneb 和 Vega-Lite 為 LuckyTemplates 創建自定義視覺對象,提升您的數據可視化能力。

在 Power Automate Desktop 中將日期添加到文件名

在 Power Automate Desktop 中將日期添加到文件名

在此博客中,您將了解如何使用 Power Automate Desktop 自動將日期添加到文件名的開頭或結尾。

Power Query:如何快速添加註釋

Power Query:如何快速添加註釋

找出幾種不同的方法在 Power Query 中添加註釋,這對於不喜歡記筆記的人非常有幫助。

Power Apps – SharePoint 集成指南

Power Apps – SharePoint 集成指南

在此博客中,您將了解 MS Power Apps 界面的基礎知識並了解 Power Apps-SharePoint 集成的過程。

什麼是 Python 中的自我:真實世界的例子

什麼是 Python 中的自我:真實世界的例子

什麼是 Python 中的自我:真實世界的例子

如何在 R 中保存和加載 RDS 文件

如何在 R 中保存和加載 RDS 文件

您將學習如何在 R 中保存和加載 .rds 文件中的對象。本博客還將介紹如何將對像從 R 導入 LuckyTemplates。

回顧前 N 個工作日——DAX 編碼語言解決方案

回顧前 N 個工作日——DAX 編碼語言解決方案

在此 DAX 編碼語言教程中,了解如何使用 GENERATE 函數以及如何動態更改度量標題。

在 LuckyTemplates 中使用多線程動態視覺技術展示見解

在 LuckyTemplates 中使用多線程動態視覺技術展示見解

本教程將介紹如何使用多線程動態可視化技術從報告中的動態數據可視化中創建見解。

LuckyTemplates 篩選上下文簡介

LuckyTemplates 篩選上下文簡介

在本文中,我將貫穿過濾器上下文。篩選上下文是任何 LuckyTemplates 用戶最初應該了解的主要主題之一。