Python零基礎學習筆記(十二)—— 字符串及其常用方法


'''
什麼是字符串
字符串就是以單引號或雙引號括起來的任意文本
'''
#創建字符串
str1 = "My name is jjking"
str2 = "I am a Little White"

'''
字符串運算
'''
#字符串連接
str3 = "My name is "
str4 = "jjking. "
str5 = str3 + str4
print("str5 = ",str5)

#輸入重複字符串
str6 = str5 * 3
print(str6)

#訪問字符轉中的某一個字符,通過索引下標查找字符,從0開始
str7 = "My name is jjking"
print(str7[0])
print(str7[1])
print(str7[2])
print(str7[3])
#第 0 個爲 M, 第1個爲 y, 第 2 個是空格沒打印出來,以此類推...

#截取字符串中的一部分
str8 = "My name is jjking"
str9 = str8[0:7]    #[包含,不包含]
str10 = str8[:7]    #默認爲0開始
str11 = str8[4:]    #默認截取到最後
print(str9)
print(str10)
print(str11)
#成員運算符測試jjking是否在str8 的字符串中
if "jjking" in str8:
    print("jjking 在 str8中出現了")

print("name" in str8)


#輸出格式化
num = 1
str12 = "My name is jjking."
f = 1.23
print("num = ", num, "str12 =", str12, "f =", f )
#使用%s %d %f 佔位符
print("num = %d, str = %s, f = %f" % (num, str12, f))
#%3.f 表示保留小數點後3位,四捨五入法
print("f = %.3f"% f)

'''
轉義字符    \
\n  輸出 換行
\\  輸出  \
\"  輸出  "
\t  製表符
'''
print("num = %d\nstr = %s\nf = %f" % (num, str12, f))
print("num = %d\n\"str = %s\"\nf = %f\\" % (num, str12, f))
print("one\tsecond")
print("\\\t\\")
# r 字符串中有好多字符需要轉移時使用,python允許使用 r 表示內部字符串默認不轉義
# windows系統下的路徑打印常用
print(r"\\\t\\")
print(r"C:\Users\Administrator\PycharmProjects\untitled\day003")

#按照格式輸出
print('''---------------
first
second
Third
''')

str12 = "My name is jjking."
#eval(str)
#功能:將字符串str當成有效的表達式來求值並返回計算結果
num1 = eval("123")
print(num1)
print(type(num1))
print(eval("+123"))
print(eval("-123"))
print(eval("12+3"))
print(eval("12-3"))
#len(str)
#功能:返回字符串的長度
print(len("My name is jjking!"))
print(len(str12))
#lower() 轉換字符串中的大寫字母爲小寫字母
print(str12.lower())
#upper() 轉換字符串中的小寫字母爲大寫字母
print(str12.upper())
#swapcase() 大小寫互換
print(str12.swapcase())
#capitalize() 首字母大寫
print(str12.capitalize())
#title() 單詞的首字母大寫
print(str12.title())
#center(width, fillchar) 返回指定寬度的居中的字符串用後面的字符填充
print(str12.center(30,"#"))
#ljust(width[, fillchar]) 返回指定寬度的左對齊的字符串用後面的字符填充
print(str12.ljust(30,"*"))
#rjust(width[, fillchar]) 返回指定寬度的右對齊的字符串用後面的字符填充
print(str12.rjust(30,"*"))
#zfill(width) 返回指定寬度右對齊前面用 0 填充的字符串
print(str12.zfill(30))
#count([str[, start][, end]) 返回字符串中str出現的次數,可以指定一個範圍,默認從頭到尾
print(str12.count("is"))
#find(str[, start][, end]) 從左向右檢測str字符串是否包含在字符串中,可以指定範圍,默認從頭到尾得到的是第一次出現的開始下標,沒有返回-1
print(str12.find("is"))
#rfind(str[, start][, end]) 從右向左檢測str字符串是否包含在字符串中,可以指定範圍,默認從頭到尾得到的是第一次出現的開始下標,沒有返回-1
print(str12.rfind("is"))
#index(str,start=0, end=len(str)) 和find()一樣,但在str不存在的時候會報異常
print(str12.index("is"))
#rindex(str,start=0, end=len(str)) 和rfind()一樣,但在str不存在的時候會報異常
print(str12.rindex("is"))
#lstrip() 截掉字符串左側指定的字符,要從頭開始,默認爲空格
print(str12.lstrip("My"))
#lstrip() 截掉字符串右側制定的字符,,要從最後面開始,默認爲空格
print(str12.rstrip("jjking."))


執行結果:

str5 =  My name is jjking. 
My name is jjking. My name is jjking. My name is jjking. 
M
y
 
n
My name
My name
ame is jjking
jjking 在 str8中出現了
True
num =  1 str12 = My name is jjking. f = 1.23
num = 1, str = My name is jjking., f = 1.230000
f = 1.230
num = 1
str = My name is jjking.
f = 1.230000
num = 1
"str = My name is jjking."
f = 1.230000\
one	second
\	\
\\\t\\
C:\Users\Administrator\PycharmProjects\untitled\day003
---------------
first
second
Third

123
<class 'int'>
123
-123
15
9
18
18
my name is jjking.
MY NAME IS JJKING.
mY NAME IS JJKING.
My name is jjking.
My Name Is Jjking.
######My name is jjking.######
My name is jjking.************
************My name is jjking.
000000000000My name is jjking.
1
8
8
8
8
 name is jjking.
My name is 



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章