'''
created on 2023年12月1日
@author: hp
''''''擷取字串'''
str2="我是迪迦奧特曼"
str3=str2[:5]
str4=str2[0:len(str2):2]
print(str3,str4)
# 擷取的字串如果不存在,會出現異常,可以用try...except捕捉異常
try:
str5=str2[10]#取出10下標上的字元
print(str5)
except indexerror:
print("指定索引不存在")
'''分割字串'''
str6="1,2,3,4,5,6,7"
str7=str6.split(',', -1)#第乙個引數為分割字元,第二個引數為分割幾個,-1或不寫表示無限制
print(str7)
str8='迪 迦 奧 特 曼 >>> 3,000萬年前'
print(str8)
list0=str8.split(' ')#該分割連續出現空格時會分割出來空字元,但是下面一行的方式並不會出現空字元
list1=str8.split() #不指定引數預設按照空格分割
list2=str8.split('>>>')
list3=str8.split(',')
list4=str8.split(' ',4)
print(str(list0)+'\n'+str(list1)+'\n'+str(list2)+'\n'+str(list3)+'\n'+str(list4))
'''count 方法 '返回指定字串中某個字串出現的次數'''
start=0
end=5
print(str8.count(' ',start,end))#start與end為可選引數可以省略
'''find 方法如果不存在返回-1,否則返回索引'''
print(str8.find('曼'),str8.find('#'))
'''in關鍵字也可以判斷是否存在某字串'''
print('奧 特 曼' in str8)
'''rfind()方法與find()幾乎相同,區別是從右邊開始查詢'''
'''index()方法與find()方法依舊相同,只是如果不存在程式會丟擲異常'''
try:
'奧特曼'.index('aa')
except : print('程式丟擲異常')
'''rindex()方法類似於rfind()方法 '''
'''startswith()方法 endswith()方法用法與find相同,判斷是否以某一字串開始或結束'''
'''lower()方法將字串轉換成小寫字母,upper()將小寫子母轉換成大寫'''
str9="abcdefg"
print(str9.lower())
print(str9.upper())
'''strip()方法可以去除字串左右兩端的空格 回車符 換行符 製表符,lstrip()方法只去除左端,rstrip()方法只去除右端,加引數的話就表示去除對應引數'''
str10=" 123 "
print(str10.lstrip()+'*')
print(str10.rstrip()+'*')
print(str10.strip()+'*')
str10="123"
print(str10.strip('1'))
'''格式化字串'''
#'%[-][+][0][m][.n]格式化字串'%exp
# 支援格式化輸出元組,但不支援格式化輸出列表
#也可以格式化輸出單個數
template='編號: %09d\t公司名稱: %s \t 官網: http://www.%s.com'
context2=(8,'明日學院','migrixueyuan')
print(template%context2)#編號: 000000008 公司名稱: 明日學院 官網:
print('這個數字是:%5d'%123)#這個數字是: 123
'''除以上方法外,python還提供了乙個format()方法用以格式化輸出字串'''
#str.format(args)
'''模板語法格式'''
#'''
index表示指定的要輸出的內容的位置,如0表示第乙個要輸出的,如果省略,表示從前到後,如果手動填寫索引,
那麼之後呢每乙個都需要填寫,否則會丟擲異常.
fill表示用指定的字元填充空白
align表示對其方式 《表示右對齊 >表示左對齊 =表示內容右對齊 並把符號放在填充內容的左側 且只對數字型別有效 ^ 表示居中
sign表示有無符號數 +表示證書加正號,負數加負號 ;-表示正數不變,負數加負號; 空格表示正數加空格,負數加負號
#對於輸出二進位制,八進位制,十六進製制時,加上#會顯示0b/0o/0x字首
width表示指定寬度
.precision表示保留幾位
type指定型別即s c d e g b o x f %
'''template='編號:\t公司名稱:\t官網:http://www..com'
context2=template.format('8','明日學院','mingrisoft')
print(context)
print(context2)
t=''#+****5.210
t=''#****+5.210
t=''#+5.210****
print(t.format(5.21))
字串專題
給定乙個字串,你的任務是計算這個字串中有多少個回文子串。具有不同開始位置或結束位置的子串,即使是由相同的字元組成,也會被視作不同的子串。示例1 輸入 abc 輸出 3 解釋 三個回文子串 a b c 示例 2 輸入 aaa 輸出 6 解釋 6個回文子串 a a a aa aa aaa 解法 1 動態...
字串專題
1.double ceil double x 求大於 x 的最小的數,即向上取整函式 includeusing namespace std intmain 2.a 65 z 90 a 97 z 122 3.字串刪除 c 從string中刪除所有的某個特定字元 超好 includeusing name...
字串專題
一直以來字串和數論都是我的弱項,是時候從字串開始改善一下了。然而有些題目並不會寫 只是給個一句話題解。字尾陣列,lcp轉換為求區間min。分別統計a到b b到a的貢獻,單調棧搞一搞。位置重合時特殊處理。隨便用什麼資料結構統計每個串出現的位置,然後暴力做。由於保證詢問字串互不相同,可以一波分析複雜度發...