2017-05-12 114 views
0

我想從字符串中提取特定的字符串,但它顯示錯誤。爲什麼我不能使用find作爲索引來提取字符串?如何在Python中提取字符串

這裏是我的代碼

string = 'ABP' 
p_index = string.find('P') 
s = string[0, p_index] 
print(s) 

TypeError: string indices must be integers 

回答

0

s = string[0, p_index]不是蟒蛇有效的語法,你應該寧願做:

s = string[0:p_index] 

由於前一個索引默認爲零,這將返回相同結果:

s = string[:p_index] 

我推薦閱讀this page以供Pyt參考hon字符串的切片,它的語法一般。

1

你應該改變這一行:

s = string[0, p_index] 

s = string[p_index] 

你不需要把任何東西,而不是該字母的索引得到'P',並且您已經找到string.find('P')的索引。

如果你的意思是從其減去從'ABP''P'字母,然後使用:

new_string = 'ABP'.replace('P','') 
0
string = 'ABP' 
p_index = string.index('P') 
s = string[p_index] 
print(s) 

string = 'ABP' 
p_index = string.find('P') 
s = string[p_index] 
print(s) 

也許你可以嘗試使用兩條