Python - 字串:初學者指南
你好,未來的 Python 魔法師!? 你準備好要深入 Python 字串的神奇世界了嗎?如果你從未寫過一行代碼,也別擔心 - 我們將從頭開始,一起建立我們的字串技能。在這篇教程結束時,你將能與最優秀的人並駕齊驅!讓我們開始吧!
創建 Python 字串
Python 中的字串就像書中的詞語 - 它們是我們用來表示文本的字符序列。創建字串就像是用引號包裹一些文本那麼簡單。讓我們看看一些例子:
# 單引號
my_string = 'Hello, World!'
# 雙引號
another_string = "Python is awesome!"
# 你甚至可以在引號中使用引號
mixed_string = "I'm learning Python"
在這些例子中,我們創建變量並將字串值賦值給它們。等號 (=) 就像是在說“這個變量現在是這個字串”。很容易吧?
存取字串中的值
現在我們已經創建了一些字串,讓我們學習如何存取它們中的特定字符。在 Python 中,我們可以使用索引做到這一點。將字串視為一排盒子,每個盒子包含一個字符。盒子從 0 開始編號。
my_name = "Alice"
# 01234
print(my_name[0]) # 輸出:A
print(my_name[2]) # 輸出:i
print(my_name[-1]) # 輸出:e(負索引從結尾開始)
在這裡,我們在字串變量後使用方括號 [] 來存取個別字符。這就像打開一個特定的盒子來看看裡面有什麼!
更新字串
這裡有一個有趣的事實:在 Python 中,字串是不可變的。這意味著一旦你創建了一個字串,你就不能改變它其中的個別字符。但別擔心!我們仍然可以根據現有的字串創建新的字串:
greeting = "Hello, World!"
new_greeting = greeting.replace("World", "Python")
print(new_greeting) # 輸出:Hello, Python!
在這個例子中,我們使用 replace()
方法來創建一個新的字串,其中“World”被替換為“Python”。這就像製作一句話的副本,並在副本中改變一個詞。
逃逸字符
有時我們需要在字串中包含特殊字符。這就是逃逸字符派上用場的地方。它們以反斜杠 () 開始:
print("He said, \"Python is fun!\"") # 輸出:He said, "Python is fun!"
print("First line\nSecond line") # \n 創建一個新行
print("Tab\tspace") # \t 創建一個製表符間距
逃逸字符就像告訴 Python 以特殊方式對待某些字符的秘密代碼。很酷吧?
字串特殊運算符
Python 有一些與字串一起工作的特殊運算符。讓我們看看一些:
# 串接(連接字串)
first_name = "John"
last_name = "Doe"
full_name = first_name + " " + last_name
print(full_name) # 輸出:John Doe
# 重複
cheer = "Hip " * 2 + "Hooray!"
print(cheer) # 輸出:Hip Hip Hooray!
# 切片
message = "Python is amazing"
print(message[7:9]) # 輸出:is
print(message[:6]) # 輸出:Python
print(message[10:]) # 輸出:amazing
這些運算符就像魔法棒 - 它們讓我們只需使用幾個字符就能以強大的方式操作字串!
字串格式化運算符
字串格式化運算符 % 是創建格式化字串的強大工具。它就像有一個模板,你可以插入不同的值:
name = "Alice"
age = 25
print("My name is %s and I am %d years old." % (name, age))
# 輸出:My name is Alice and I am 25 years old.
在這裡,%s 是字串的佔位符,而 %d 是整數的佔位符。% 運算符然後用我們提供的值填寫這些佔位符。
Python 字串中的雙引號
我們已經看到我們可以用單引號或雙引號創建字串。但是如果我們想在字串中包含引號呢?這就是如何做到的:
# 使用單引號包含雙引號
message = 'He said, "Python is great!"'
# 使用雙引號包含單引號
another_message = "It's a beautiful day!"
print(message)
print(another_message)
通过交替使用單引號和雙引號,我們可以輕鬆地在字串中包含引號,而不會讓 Python 混亂。
三引號
當我們需要創建包含多行的字串或包含單引號和雙引號的字串時,三引號非常有用:
long_message = """This is a long message
that spans multiple lines.
It can contain 'single' and "double" quotes freely."""
print(long_message)
三引號就像給 Python 一個大盒子,把你所有的文本放進去,無論它有多複雜!
Python 多行字串
我們剛剛看到了三引號如何創建多行字串。這裡有另一個例子:
poem = '''
Roses are red,
Violets are blue,
Python is awesome,
And so are you!
'''
print(poem)
這對於當你需要在代碼中包含大量文本時非常有用。
字串的算術運算符
雖然我們不能以傳統的方式對字串進行數學運算,但 Python 確實允許我們以一些有趣的方式使用一些算術運算符與字串一起:
# 附加(串接)
greeting = "Hello" + " " + "World"
print(greeting) # 輸出:Hello World
# 重複
echo = "Echo " * 3
print(echo) # 輸出:Echo Echo Echo
只是記住,你不能減去或除以字串 - 那就太可笑了!
獲取 Python 字串的類型
有時候,確定我們正在處理的數據類型很有用。我們可以使用 type()
函數來做到這一點:
my_string = "Hello, World!"
print(type(my_string)) # 輸出:<class 'str'>
這確認了我們的變量確實是一個字串(str)。
內建字串方法
Python 提供了一個滿滿的內建方法工具箱,用於處理字串。以下是一些最有用的:
方法 | 描述 | 示例 |
---|---|---|
upper() |
將字串轉換為大寫 |
"hello".upper() → "HELLO"
|
lower() |
將字串轉換為小寫 |
"WORLD".lower() → "world"
|
strip() |
刪除開頭和結尾的空白 |
" hi ".strip() → "hi"
|
replace() |
將一個子字串替換為另一個 |
"Hello".replace("H", "J") → "Jello"
|
split() |
將字串拆分為列表 |
"a,b,c".split(",") → ["a", "b", "c"]
|
join() |
將可迭代元素的元素連接為字串 |
",".join(["a", "b", "c"]) → "a,b,c"
|
這些方法就像你 Python 工具箱中的不同工具 - 每個都有幫助你以不同的方式操作字串!
內建函數與字串
最後,讓我們看看一些與字串一起工作的 Python 內建函數:
# len() - 返回字串的長度
print(len("Python")) # 輸出:6
# str() - 將其他數據類型轉換為字串
number = 42
print("The answer is " + str(number)) # 輸出:The answer is 42
# ord() - 返回字符的 Unicode 碼點
print(ord('A')) # 輸出:65
# chr() - 返回 Unicode 碼點的字符
print(chr(65)) # 輸出:A
這些函數就像瑞士軍刀 - 它們是多功能的工具,可以在許多不同的情況下幫助你。
就這樣,我的年輕 Python 魔法師們!我們已經穿越了 Python 字串的土地,從創造到操作,甚至更遠。記住,練習成就完美,所以不要害怕實驗這些概念。在你意識到之前,你將能夠像專業人士一樣串聯 Python 代碼!開心編程!??
Credits: Image by storyset