2013-04-06 80 views
1

我已經在python中編寫了一些代碼,並且我遇到了這樣的問題,例如,當我使用split函數後,例如「這是我的第一個python程序」這樣的:替換python中的空格+

['this', 'is', 'my', 'very', 'first', 'python', 'program'] 
['this', 'is', 'my', 'very', 'first', 'python program'] 
['this', 'is', 'my', 'very', 'first python program'] 
['this', 'is', 'my', 'very first python program'] 
['this', 'is', 'my very first python program'] 
['this', 'is my very first python program'] 
['this is my very first python program'] 

現在我想通過與+號分隔成一個URL的每個字。

我想爲每個循環使用一個,但我的問題是它應該自動替換它,如上所述。例如,"python program"的結果應該是"python+program"

那麼誰能告訴我如何解決這個問題在python中?

回答

1

這應該工作

my_string = "this is my very first python program" 
n = len(my_string.split(' ')) 
for i in range(n): 
    my_string_split = [x.replace (" ", "+") for x in my_string.split(' ', n-i-1)] 
    print my_string_split 
+0

謝謝你,我知道那一個,但事情是,例如我在拆分到3個字就是這樣,是我,第一個Python程序,當我把它稱爲一個循環和發送每個單詞到一個網址,然後爲2和第三個單詞,我需要添加+而不是空格自動 – user1660130 2013-04-06 20:27:30

+0

我剛剛編輯答案..會有幫助嗎? – karthikr 2013-04-06 20:33:21

+0

謝謝你正在工作.. – user1660130 2013-04-06 20:47:15

3

這是更好地使用合適的工具。你需要的是urlencode文本參數,所以你需要使用urllib.urlencode函數。

2

如何:

>>> a = "this is my first Python program" 
>>> "+".join(a.split()) 
'this+is+my+first+Python+program'