Python入門示例系列10 字串 初級

2022-09-18 15:30:10 字數 4358 閱讀 7894

python入門示例系列10 字串(初級)

python中的字串用單引號 ' 或雙引號 " 括起來,同時使用反斜槓 \ 轉義特殊字元。

s1="

hello

"s2='

hello

's3=''

s4=""

s5='''

hello

'''s6="""

hello

"""s7=str()

print

(type(s1))

print

(type(s2))

print

(type(s3))

print

(type(s4))

print

(type(s5))

print

(type(s6))

print(type(s7))

結果:

'str

'>

'str

'>

'str

'>

'str

'>

'str

'>

'str

'>

'str

'>

索引值以 0 為開始值,-1 為從末尾的開始位置。

示例:

str = '

abcdefg

'print (str) #

輸出字串

print (str[0]) #

輸出字串第乙個字元

print (str[3])

print (str[-1])

print (str[-3])

字串的擷取子串的語法格式如下:

變數[頭下標:尾下標]   #注意,取頭不取尾

str = '

abcdefg

'print (str) #

輸出字串

print (str[0:-1]) #

輸出第乙個到倒數第二個的所有字元

print (str[2:5]) #

輸出從第三個開始到第五個的字元

print (str[2:]) #

輸出從第三個開始的後的所有字元

執行以上程式會輸出如下結果:

abcdefg

abcdef

cdecdefg

假設 a="hellow",b="python"下表例項變數 a 值為字串 "hello",b 變數值為 "python":

操作符描述例項+

字串連線

>>>a+ b

'hellopython'

*重複輸出字串

>>>a* 2

'hellohello'

[  ]

通過索引獲取字串中字元

>>>a[1]

'e'[ : ]

擷取字串中的一部分

>>>a[1:4]

'ell'

in成員運算子 - 如果字串中包含給定的字元返回 true

>>>"h"ina

true

not in

成員運算子 - 如果字串中不包含給定的字元返回 true

>>>"m"notina

true

r/r原始字串 - 原始字串:所有的字串都是直接按照字面的意思來使用,沒有轉義特殊或不能列印的字元。 原始字串除在字串的第乙個引號前加上字母"r"(可以大小寫)以外,與普通字串有著幾乎完全相同的語法。

>>>print(r'\n')

\n>>> print(r'\n')

\n加號 + 是字串的連線符,把兩個字串連線起來(拼接起來)。

星號 * 表示複製當前字串,與之結合的數字為複製的次數(重複多次,複製多次)。

例項如下:

str = 'abcdefg'

print (str) #輸出字串

print (str * 2) #輸出字串兩次,也可以寫成 print (2 * str)

print (str + "test") #連線字串

執行以上程式會輸出如下結果:

abcdefg

abcdefgabcdefg

abcdefgtest

python 使用反斜槓 \ 轉義特殊字元,如果你不想讓反斜槓發生轉義,可以在字串前面新增乙個 r,表示原始字串(r 指 raw,即 raw string,會自動將反斜槓轉義):

例項

>>> print('

ab\ncd')

abcd

>>> print(r'

ab\ncd')

ab\ncd

常見轉義字元

\\反斜槓符號

>>>print("\\")\

\'單引號

>>>print('\'')'

\"雙引號

>>>print("\"")"

\n換行

>>>print("\n")>>>

\t橫向製表符

>>>print("hello \t world!")helloworld!>>>

\r回車,將 \r 後面的內容移到字串開頭,並逐一替換開頭部分的字元,直至將 \r 後面的內容完全替換完成。

>>>print("hello\rworld!")world!>>>print('google taobao\r123456')123456taobao

\yyy

八進位制數,y 代表 0~7 的字元,例如:\012 代表換行。

>>>print("\110\145\154\154\157")hello

\xyy

十六進製制數,以 \x 開頭,y 代表的字元,例如:\x0a 代表換行

>>>print("\x48\x65\x6c\x6c\x6f")hello

注意,python 沒有單獨的字元型別,乙個字元就是長度為1的字串。

>>> word = '

python

'>>> print(word[0], word[5])

p n>>> print(word[-1], word[-6])

n p

與 c 字串不同的是,python 字串不能被改變。向乙個索引位置賦值,比如 word[0] = 'm' 會導致錯誤。

字串有很多內建函式(下面列出幾個常用的函式。

string.format()

格式化字串 (

string.lower()

轉換 string 中所有大寫字元為小寫.

string.upper()

轉換 string 中的小寫字母為大寫

string.replace(old, new,  num=string.count(str1))

把 string 中的 old 替換成 new, 如果 num 指定,則替換不超過 num 次.

示例:

>>> "

abc"

.upper()

'abc

'>>> "

abc"

.lower()

'abc

'>>> "

abcdef

".replace("

ab","

12345")

'12345cdef

'>>>

系列目錄

python入門示例系列01 為什麼學python

python入門示例系列02 python 語言的特點

python入門示例系列03 安裝python開發工具

python入門示例系列04 使用 idle shell

python入門示例系列05 使用pycharm

python入門示例系列06 使用pycharm單步除錯

python入門示例系列07 python注釋

python入門示例系列08 基礎語法

python入門示例系列09 python算術運算

python入門示例系列10 字串(初級)

python入門示例系列11 資料型別

python入門示例系列12 資料型別轉換

ref

Python入門示例系列 目錄

系列目錄 python入門示例系列01 為什麼學python python入門示例系列02 python 語言的特點 python入門示例系列03 安裝python開發工具 python入門示例系列04 使用 idle shell python入門示例系列05 使用pycharm python入門示...

Python入門示例系列19 迴圈語句

python入門示例系列19 迴圈語句 python 中的迴圈語句有 for 和 while。python 中while 語句的一般形式 while 判斷條件 condition 執行語句 statements 同樣需要注意冒號和縮排。另外,在 python 中沒有 do.while 迴圈。以下例項...

Python入門示例系列24 檔案讀寫

python入門示例系列24 檔案讀寫 檔案操作的模式如下表 使用 open 開啟檔案後一定要記得呼叫檔案物件的 close 方法。比如可以用 try finally 語句來確保最後能關閉檔案。file object open r d test.txt try all the text file o...