Python 中的原始字串和 Unicode 字串

Neema Muganga 2023年1月30日
  1. Python 中的原始字串
  2. Python Unicode 字串
Python 中的原始字串和 Unicode 字串

Python 中的原始字串

Python 中的原始字串字面量定義了在開引號前以 rR 為字首的普通字串。如果字串中存在反斜槓 (\),則原始字串將此字元視為文字字元而不是轉義字元。

例如,

print(r"\n")
print(r"\t")

輸出:

\n
\t

定義字串時需要將每個反斜槓加倍,以免將其誤認為是換行符或新制表符等轉義序列的開頭。我們在正規表示式的語法和表達 Windows 檔案路徑時看到了這樣的語法應用。

注意
r'\' 將引發語法錯誤,因為 r 將反斜槓視為文字。如果沒有 r 字首,反斜槓將被視為轉義字元。

例子:

text = "Hello\nWorld"
print(text)

輸出:

Hello
World

如果沒有原始字串標誌 r,反斜槓被視為轉義字元,因此在列印上述字串時,會生成新行轉義序列。因此,文字中的兩個字串在單獨的行中列印出來,如輸出中所示。

使用相同的文字示例,在字串前新增 r 字首。

例子:

text = r"Hello\nWorld"
print(text)

輸出:

Hello\nWorld

從輸出中,原始字串標誌將反斜槓視為文字,並列印出包含反斜槓的文字。因此,輸入和輸出都是相同的,因為反斜槓字元沒有被轉義。

例如,'\\n'r'\n' 具有相同的值。

print("\\n")
print(r"\n")

Python Unicode 字串

Unicode 是儲存 python 字串的一種方式。Unicode 可以儲存所有語言型別的字串。第二種方式是 ASCII 型別的字串儲存,在 Python 中表示為 strstr 是 Python 中儲存字串的預設資料型別。

要將字串轉換為 Unicode 型別,請像這樣在文字之前放置一個 u - u'string' 或像這樣呼叫 unicode() 函式 - unicode('string')

u'text' 是一個 Unicode 字串,而 text 是一個位元組字串。Unicode 物件佔用更多記憶體空間。

例如,

test = u"一二三"
print(test)

輸出:

一二三

相關文章 - Python String