❶ python 對一段英文文本整理
>>> s= "D-typed variables, Python; really?!! god's 'its "
>>> reg=re.compile(r"\w+[.,;'\"!?-]\w+|\w+|[.,;'\"!?-]")
>>> reg.findall(s)
['D-typed', 'variables', ',', 'Python', ';', 'really', '?', '!', '!', "god's", "'", 'its']
>>>
❷ 電腦在下載一個python 3.7可以將原來的python覆蓋掉嗎
不能覆蓋。會安裝一個新版本的Python。
❸ python如果含有兩個相同字母,如何將其中一個替換成其他字元
採取的演算法是:將第一和除其之外的每個字母對比,相同即記下替換後的word,依次下推(第二和第三、第四。。。),逐個修改映射list
#coding:utf8
if__name__=='__main__':
words=['school','google','getfileinfo','cherrypy','pypy']
printwords
tmps=words #映射list,存放替換大小寫後的list
index=0 #list遍歷到第幾個了
forwdsinwords: #遍歷words
i=0 #記錄list下的每個word長度
j=0 #記錄每個word有幾個相同的字母數
#下面採取的演算法是:將第一和除其之外的每個字母對比,相同即記下替換後的word,依次下推(第二和第三、第四。。。),逐個修改映射list:tmps
forwd_ainwds[i:]:
forwd_binwds[i+1:]:
ifwd_a==wd_b:
#printwds,wd_a.upper()
j+=1
ifj>1: #相同字母超過一個的,需要沿用之前修改好的word,否則最後記錄的將是最後一個相同字母轉大寫的word
tmp=tmp.replace(wd_a,wd_a.upper(),1)
else:
tmp=wds.replace(wd_a,wd_a.upper(),1)
#printtmp
tmps[index]=tmp #修改映射list:tmps
i+=1
index+=1
printtmps
運行結果:
['school', 'google', 'getfileinfo', 'cherrypy', 'pypy']
['schOol', 'GOogle', 'gEtFIleinfo', 'cheRrYpy', 'PYpy']
演算法二:
#coding:utf8
if__name__=='__main__':
words=['school','google','getfileinfo','cherrypy','pypy']
printwords
tmps=words #映射list,存放替換大小寫後的list
#演算法二
#下面採取的演算法是:先將單詞序列化,然後排序,接著採取兩兩相比較,減少比較次數,同時遇到相同字母的就跳到下一組對比
index=0
forwordinwords:
letters=[]
forwdinword:
letters.append(wd)
letters.sort()
#printletters
j=0
flag=False
foriinrange(len(letters)-1):
ifflag:
flag=False #重置跳過標記
continue #第一和第二位字母相同,那就沒必要再比較第二和第三位字母了,直接跳過比較第三和第四位字母
#printletters[i],letters[i+1]
ifletters[i]==letters[i+1]:
j+=1
ifj>1:
tmp=tmp.replace(letters[i],letters[i].upper(),1)
else:
tmp=word.replace(letters[i],letters[i].upper(),1)
#printtmp
tmps[index]=tmp
flag=True #jumpflag
index+=1
printtmps
測試了下運行時間,words在145個時,運行時間對比:
Time2: 0.0160000324249
Time2: 0.0150001049042
Time2: 0.0149998664856
Time1: 0.0160000324249
Time1: 0.0159997940063
Time1: 0.0150001049042
可見演算法二的最少運行時間比演算法一少,要快
❹ python怎麼實現單詞反轉字元串
Python
的切片功能實際上比很多程序員認為的更強大。
a
=
m
[
0
:
100
:
10
]
#
帶步進的切片(步進值=10)
注意:步進值為step
當step
>
0
時
切片從
start(含start)處開始,到end(不含end)處結束,**從左往右**,每隔(step-1)(索引之間的差仍為step,但相隔的元素是step-1個)個元素進行一次截取。
這時,start
指向的位置應該在end指向的位置的左邊,否則返回值為空
當step
<
0
時
切片從
start(含start)處開始,到end(不含end)處結束,**從右往左**,每隔(step-1)(索引之間的差仍為step,但相隔的元素是step-1個)個元素進行一次截取。
這時,start
指向的位置應該在end指向的位置的右邊,否則返回值為空
❺ 如何用Python將一句話中一個單詞前後的兩個單詞提取出來
可以用正則或者轉化成列表後定位five的位置,然後切片取前後兩個元素即可
❻ python把一個字元串里的單詞逐個拿出來
可以用遍歷的方法。
string = input('請輸入一個單詞:')
str_list = list(string) #這里將輸入的單詞轉換為一個數組
for i in str_list: #遍歷數組
print(i, end=' ')
❼ python中,從一個單詞中找出特定的字母(字母有重復)
a = "banana"
if 'a' in a:
b = a.replace('a', 'b')
print b
❽ 正式re如何匹配一次或多次,如 python(.*)python ,如何匹配這串單詞的1次或多次
❾ python中怎麼把一個單詞的首字母移動到最後一位
代碼如下:
❿ 請問各位Python如何在一個單詞里替換多個項目需要python語言哦。
題主沒有明確給出輸入數據的格式,這里只給出核心的函數:
設變數s就是要處理的字元串,則:
s1
=
s.replace('#',
'A');
就可以了