4 回答

TA貢獻1790條經(jīng)驗 獲得超9個贊
1 2 3 4 5 6 7 8 9 10 11 | def get_solo(text): duels=[x+x for x in list('。,!')] #如需增加標(biāo)點符號,比如問號,直接將list('。,!')換成list('。,!?')即可. for d in duels: while d in text: text=text.replace(d,d[0]) return text
if __name__=='__main__': text='開開心心,,,,上上。。。好好的??!' print(get_solo(text)) |
結(jié)果:
1 2 | >>> 開開心心,上上。好好的! |

TA貢獻1795條經(jīng)驗 獲得超7個贊
先轉(zhuǎn)成unicode,然后判斷每個字符是不是標(biāo)點,如果是,判斷后面一個字符是不是,兩個條件都滿足就把后面的刪掉吧

TA貢獻1772條經(jīng)驗 獲得超5個贊
在Python中,可以用Indexing辦法訪問String的各個字符,以訪問String中的一系列字符,使用切片辦法。使用切片運算符(冒號)完成字符串切片。索引允許負(fù)地址引用訪問字符串后面的字符,例如-1表示最后一個字符,-2表示第二個字符,依此類推。
訪問范圍之外的索引將導(dǎo)致IndexError。只允許將整數(shù)作為索引傳遞,float或其他類型將導(dǎo)致TypeError。
# Python Program to Access
# characters of String
String1 = "GeeksForGeeks"
print("Initial String: ")
print(String1)
# Printing First character
print("\nFirst character of String is: ")
print(String1[0])
# Printing Last character
print("\nLast character of String is: ")
print(String1[-1])
# Printing 3rd to 12th character
print("\nSlicing characters from 3-12: ")
print(String1[3:12])
# Printing characters between
# 3rd and 2nd last character
print("\nSlicing characters between " +
"3rd and 2nd last character: ")
print(String1[3:-2])
添加回答
舉報