[Python初學者] 10種 Strings 字串用法
( ) )
Python Data Types 資料類型 – Strings 字串:利用小括號(
No. |
Strings 字串用法 |
註 |
1 | Strings 用「雙引號」或「單引號」表示 | (“字串“) 或 (‘字串‘) |
2 | Strings 為多重字串時,可用三次重複的「雙引號」或「單引號」 | (“”” 多重字串 “””) 或 (”’ 多重字串 ”’) |
3 | Strings 為一種矩陣(Array) | 矩陣內位置(用中括號 [ ] 表示) |
4 | Slicing Strings 字串片段 | 利用矩陣內位置概念([ ]) |
5 | Strings 做一個迴圈(Looping) | Strings 為一種矩陣,可以利用字母做迴圈(使用:for ) |
6 | Strings Length 長度 | 利用 len ( ) 表示 |
7 | 查看 Strings 內的 字串 或 字母 | 利用 in 表示,並利用 1) if 假設,查找字是否出現 ( in )在 strings 中 或 2) if 假設,查找字未出現 ( not in ) 在 string 中 |
8 | Modify Strings 修改字串 | 1) 大寫 upper ( ) 2) 小寫 lower ( ) 3) 刪除 Strings 前後空格 strip ( ) 4) 替換字母 replace ( ) 5) 分割字串 split ( ) |
9 | String concatenation 串聯字串 | 利用加號 + 表示 |
10 | String Format 字串格式 | 利用 format () 將字串和數字結合 |
“字串“) 或 (‘字串‘) )
1. Strings 用「雙引號」或「單引號」表示:( (print("Oceane")
Oceane
又或者
print('Oceane')
Oceane
( (“”” 多重字串 “””) 或 (”’ 多重字串 ”’) )
2. Strings 為多重字串時,可用三次重複的「雙引號」或「單引號」:a = """ Hi, my name is Oceane. Nice to meet you! """
print(a)
Hi, my name is Oceane. Nice to meet you!
又或者
a = ''' Hi, my name is Oceane. Nice to meet you! '''
print(b)
Hi, my name is Oceane. Nice to meet you!
# 不論用三次重複的「雙引號」或「單引號」,出來的結果皆為:Hi, my name is Oceane. Nice to meet you!
[ ] 表示)
3. Strings 為一種矩陣(Array):矩陣內位置(用中括號a = "Hello, Oceane!"
print(a[1])
e
# Strings 為一種矩陣,當 a = “Hello, Oceane !”,則第一個位置(用中括號 [ ] 表示)為 e。
第0個位置為(print ( a [0] )):H
第1個位置為(print ( a [1] )):e
第2個位置為(print ( a [2] )):l
第3個位置為(print ( a [3] )):l
第4個位置為(print ( a [4] )):o
第5個位置為(print ( a [5] )):,
第6個位置為(print ( a [6] )): (空格)
第7個位置為(print ( a [7] )):O
以此類推…
[ ])
4. Slicing Strings 字串片段:利用矩陣內位置概念(b = "Hello, Oceane!"
print(b[2:5])
llo
# 當 b = “Hello, Oceane !”,則第2到第5個位置之前(即第4個位置)為 llo。(注意:第一個字母為位置 0)
又或者
b = "Hello, Oceane!"
print(b[:5])
Hello
# 則從頭(第0個位置)到第5個位置之前(即第4個位置)為 Hello。
又或者
b = "Hello, Oceane!"
print(b[2:])
llo, Oceane!
# 則從頭(第2個位置)到最後為 llo, Oceane!。
又或者
b = "Hello, Oceane!"
print(b[-5:-2])
ean
# 則倒數第5個位置到倒數第2個位置,為 ean。
Strings 為一種矩陣,可以利用字母做迴圈(使用:for )
5. Strings 做一個迴圈(Looping):for x in "Oceane":
print(x)
O
c
e
a
n
e
# 當 Strings 為一種矩陣,可以利用字母做迴圈(使用:for )。註:當 for x in “Oceane” 後面接著 print (x),須將 print(x) 利用 tab鍵移至後面一格。
結果代表:
x 跑第 1 次迴圈 Loop,出現 O
x 跑第 2 次迴圈 Loop,出現 c
x 跑第 3 次迴圈 Loop,出現 e
x 跑第 4 次迴圈 Loop,出現 a
x 跑第 5 次迴圈 Loop,出現 n
x 跑第 6 次迴圈 Loop,出現 e
len ( ) 表示
6. Strings Length 長度:利用a = "Hello, Oceane!"
print(len(a))
14
# 表示此字串長度為:14(包含標點符號及空格)。
in 表示
7. 查看 Strings 內的字串 或 字母:利用txt = "Oceane is a cute girl!"
print("cute" in txt)
True
# cute 出現在此 string 中,因此結果為:True。
利用 if 假設,字出現 ( in )在 string 中
txt = "Oceane is a cute girl!"
if "cute" in txt:
print("Yes, 'cute' is present")
Yes, 'cute' is present
# 利用 if:if cute 出現在此 string 中,則 print ” Yes, ‘cute’ is present “。
但,
利用 if 假設,字未出現 ( not in ) 在 string 中
txt = "Oceane is a cute girl!"
if "boy" not in txt:
print("Yes, 'boy' is NOT present")
Yes, 'boy' is NOT present
# 利用 if:if boy 未出現在此 string 中,則 print ” Yes, ‘boy’ is NOT present “。
1) 大寫 upper ( )
2) 小寫 lower ( )
3) 刪除 Strings 前後空格 strip ( )
4) 替換字母 replace ( )
5) 分割字串 split ( )
8. Modify Strings 修改字串:upper ( )
1) 大寫a = "Hello, Oceane!"
print(a.upper())
HELLO, OCEANE!
# 將 print (a) 再加上 upper () ,則結果會讓所有 Strings 裡面的字母變成大寫。
lower ( )
2) 小寫a = "Hello, Oceane!"
print(a.lower())
hello, oceane!
# 將 print (a) 再加上 lower () ,則結果會讓所有 Strings 裡面的字母變成小寫。
strip ( )
3) 刪除 Strings 前後空格a = " Hello, Oceane! "
print(a.strip())
Hello, Oceane!
# 將 print (a) 再加上 strip () ,則結果會讓 Strings( Hello, Oceane! )最前面和最後面的空格被刪除。
replace ( )
4) 替換字母a = "Hello, Oceane!"
print(a.replace("H", "A"))
Aello, Oceane!
# 將 print (a) 再加上 replace ( “H”, “A” ) ,則結果會讓 Strings 中的 H 被 A 替換,而從 Hello 變成 Aello。
split ( )
5) 分割字串a = "Hello, Oceane!"
print(a.split(","))
['Hello', ' Oceane!']
# 將 print (a) 再加上 split ( ” , ” ) ,則將 Strings 中逗點前後的兩個字被分割成:Hello 和 Oceane 。
+ 表示
9. String concatenation 串聯字串:利用加號a = "Hello"
b = "Oceane!"
c = a + b
print(c)
HelloOceane!
# 利用加號( + )將 a 、 b 字串相加成 c。
又或者
a = "Hello"
b = ", "
c = "Oceane!"
d = a + b + c
print(d)
Hello, Oceane!
# 利用加號( + )將 a 、 b 、 c 字串相加成 d。
a = "Hello"
b = "Oceane!"
c = a + " " + b
print(c)
Hello Oceane!
# 當 a + ” ” (雙引號) + b ,雙引號代表在 a 和 b字串之間加入空白。
format () 將字串和數字結合
10. String Format 字串格式:利用一般來說,字串 strings 和數字 numbers 是無法串在一起呈現的,如下:
age = 2
txt = "My name is Oceane, I am " + age
print(txt)
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-155-293f1987e799> in <module>
1 age = 2
----> 2 txt = "My name is Oceane, I am " + age
3 print(txt)
TypeError: must be str, not int
# 字串和數字串聯,則出現 Error。
可利用 format (),在 strings 中想加入數字部分加入大括弧( { } )
age = 2
txt = "My name is Oceane, I am {}"
print(txt.format(age))
My name is Oceane, I am 2
# 利用 format ( age ),則在 strings 中 帶入 age 的數值至 大括弧( { } )內。
又或者 format ( ) 中的參數數量沒有限制
age = 2
height = 100 weight = 8.9
info = "Oceane is {} years old, {} cm and {} kg."
print(info.format(age, height, weight))
Oceane is 2 years old, 100 cm and 8.9 kg.
# format ( age, height, weight ),在 strings 中依序帶入 大括弧( { } )內,則呈現 { 2 } 、{ 100 ]、{ 8.9 }。
又或者在大括弧 { } 中加入位置編號
age = 2
height = 100
weight = 8.9
info = "Oceane is {2} years old, {1} cm and {0} kg."
print(info.format(weight, height, age))
Oceane is 2 years old, 100 cm and 8.9 kg.
# 如大括弧依序為
位置 2 { 2 }:age = 2
位置 1 { 1 }:height = 100
位置 0 { 0 }:weight = 8.9
則呈現 { 2 } 、{ 100 }、{ 8.9 }。
另一篇Python Data Types 資料類型,請參考:https://myoceane.fr/index.php/python-data-types/
參考出處:https://www.w3schools.com/python/python_strings.asp
One thought on “[Python初學者] 10種 Strings 字串用法”