字元串的操作方法
+ 字元串連接配接操作
str1 = "大金鍊子"
str2 = "小手表"
str3 = str1 + str2
print(str3)
* 字元串複制操作
str1 = "大金鍊子"
str2 = "小手表"
str3 = str1*3
print(str3)
[] 字元串索引操作,通過索引通路指定位置的字元,索引從0開始
[::] 字元串取片操作
完整格式:[開始索引:結束索引:間隔值]
[:結束索引] 從開頭截取到結束索引之前
[開始索引:] 從開始索引截取到字元串的最後
[開始索引:結束索引] 從開始索引截取到結束索引之前
[:] 截取所有字元串
[開始索引:結束索引:間隔值] 從開始索引截取到結束索引之前按照指定的間隔截取字元
r'字元串' 元字元串,所有字元串中的轉義字元不會轉義,當作普通字元
str1 = "大金鍊子小手表,一天三頓小燒烤,青春獻給小酒桌,怎麼澎湃怎麼喝!"
print(str1[:7])
print(str1[12:15])
print(str1[-8:])
print(str1[36:])
print(str1[::3])
print(str1[::-2])
#截取"烤燒小"
print(str1[11:14:-1])
#截取 桌小獻
print(str1[-10:-15:-2])
print(str1[22:17:-2])
字元串函數
capitalize()
功能:首字母大寫
格式:字元串.capitalize()
傳回值:新字元串
str2 = str1.capitalize()
str3 = str1.title()
print(str2)
print(str3)
upper()将所有小寫字母變成大寫 lower()将所有大寫字母小寫
# str2 = str1.upper()
# print(str2)
# str3 = str2.lower()
# print(str3)
swapcase()大小寫互換
# str2 = str1.swapcase()
# print(str2)
len() 計算字元串的長度
# val = len(str1)
# print(val)
count() 統計字元串中某個元素的數量
# val = str1.count("a")
# print(val)
find() 查找某個字元串第一次出現的索引位置
# str2 = str1.find("t",2,10)
# print(str2)
startswith() 判斷是否以某個字元為開頭
# str2 = str1.startswith("t",4)
# print(str2)
endswith() 判斷是否以某個字元結尾
# str2 = str1.endswith("T")
# print(str2)
isupper() 判斷字元串是否都是大寫字母
# str3 = "THIS Is A"
# str2 = str3.isupper()
# print(str2)
islower() 判斷字元串是否都是小寫字母
# str3 = "this is "
# str2 = str3.islower()
# print(str2)
isalnum() 判斷字元串是否是由數字、字母、漢字組成
# str3 = "thisisa12"
# str2 = str3.isalnum()
# print(str2)
isalpha() 判斷字元串是否由字母和文字組成
# str3 = "thisisπ"
# str2 = str3.isalpha()
# print(str2)
isdigit() 判斷是否是由十進制數字組成的
# str2 = "15"
# str3 = str2.isdigit()
# print(str3)
isnumeric() 判斷是否是數字組成的字元串
# str2 = "123"
# str3 = str2.isnumeric()
# print(str3)
isdecimal() 判斷是否是數值組成的字元串
# str2 = "123"
# str3 = str2.isdecimal()
# print(str3)
# L = ["A","1","bc","26","89",22]
# sum1 = 0
# for val in L:
# if val.isdigit():
# val1 = int(val)
# sum1 += val1
# print(sum1)
isspace() 判斷字元串是否由空白符組成
# str3 = "\r\n"
# str2 = str3.isspace()
# print(str2)
istitle() 判斷字元串是否每個單詞都首字母大寫
# str3 = "This Is a Test"
# str2 = str3.istitle()
# print(str2)
split() 按照指定的字元進行切分,預設按照空格
# str2 = str1.split()
# print(str2)
# str3 = str1.split("T")
# print(str3)
splitlines() 按照換行來進行切分
# str3 = "this is \n a \n test"
# str2 = str3.splitlines()
# print(str2)
# str3 = """this is
# a
# test"""
# str2 = str3.splitlines()
# print(str2)
join() 字元串拼接
# str1 = "@"
# str2 = "this"
# str3 = str1.join(str2)
# print(str3)
# str4 = " ".join(str2)
# print(str4)
# str5 = ["this "," is","a","test"]
# str6 = str1.join(str5)
# print(str6)
zfill() 填充字元串
# str1 = "this"
# str2 = str1.zfill(10)
# print(str2)
center() 填充字元串 然後字元串居中
# str1 = "this"
# str2 = str1.center(10,"#")
# print(str2)
ljust() 字元串居左填充
# str1 = "this"
# str2 = str1.ljust(10,"$")
# print(str2)
rjust() 字元串居右填充
# str1 = "this"
# str2 = str1.rjust(10,"%")
# print(str2)
strip() 去掉指定的字元串 預設去掉換行
# str1 = "this"
# print(str1)
# str2 = str1.strip("t").strip("h")
# print(str2)
rstrip() 從右邊去掉某個字元
# str1 = "this"
# print(str1)
# str2 = str1.rstrip("s")
# print(str2)
lstrip() 從左邊去掉某個字元
# str1 = "this"
# print(str1)
# str2 = str1.lstrip("t")
# print(str2)
maketrans() 和 translate()
"""
maketrans()
功能:制作用于字元串替換的映射表
格式: 字元串.maketrans('查找字元','替換字元') 兩個字元必須長度相等
傳回值:字典
translate()
功能:進行字元串替換操作
格式:字元串.translate(映射表)
傳回值:替換之後的字元串
"""
# str1 = "this is a test"
# str2 = str1.maketrans("t","Y")
# print(str2)
# str3 = str1.translate(str2)
# print(str3)
format 格式化字元串
文法: 它通過{}和:來代替%。
注意: 字元串的format函數可以接受無限個參數,位置可以不按順序,可以不用或者用多次,不過2.6不能為空{},2.7才可以。
順序傳參
# str1 = "{} say hello to {}"
# str2 = str1.format("jack","jerry")
# print(str2)
按照索引值進行傳參 注意:大括号中傳遞得是Index值,不要超出索引範圍
# str1 = "{1} say hello to {0}"
# str2 = str1.format("jack","jerry")
# print(str2)
按照索引來進行傳參
# str1 = "{0[1]} say hello to {0[0]}"
# str2 = str1.format(["jack","jerry"])
# print(str2)
關鍵字來進行傳參
# str1 = "{name} is {age} years old!"
# str2 = str1.format(name = "tom",age = 100)
# print(str2)
填充
"""
居中 ^
左對齊 <
右對齊 >
"""
# 填充格式寫在前邊 要填充的字元在format參數中
# str1 = "this"
# str2 = "{:$^10}".format(str1)
# print(str2)
# str1 = "this"
# str2 = "{:$<10}".format(str1)
# print(str2)
# str1 = "this"
# str2 = "{:$>10}".format(str1)
# print(str2)
調整精度(四舍五入)
# str1 = "{:.2f}".format(1.2434)
# print(str1)
進制轉換
# str1 = "{:b}".format(17)
# print(str1)
#
# str1 = "{:o}".format(17)
# print(str1)
#
# str1 = "{:d}".format(17)
# print(str1)
#
# str1 = "{:x}".format(17)
# print(str1)
逗号,還能用來做金額的千位分隔符:
# str1 = "{:,}".format(123456789)
# print(str1)