2017-02-23 242 views
0

我有我的空間列表分割字符串的最後一個斜線,在列表中的項目之一是,例如,這樣的:"/home/hoeter/PycharmProjects/Renpy/window.py"獲取字符串蟒蛇

最終的結果我想是讓它來出這樣的:

window.py="/home/hoeter/PycharmProjects/Renpy/window.py" 

在Javascript中我會做這樣的事情:

var string = "/home/hoeter/PycharmProjects/Renpy/window.py"; 
for (var i = string.length; i>1; i--) 
{ 
    if(string.charAt(i) === "/") 
    { 
     temp = string.substring(i+1, string.length); 
     string = temp + "=" + '"' + string + '"'; 
     console.log(string); 
     i = 0; 
    } 
} 
>>> window.py="/home/hoeter/PycharmProjects/Renpy/window.py" 

但對於循環不以這種方式工作在Python,我已經看到了一些與循環但我不明白我如何能夠實現我想要的。 最後,我想通過整個列表與for split in splits,結果連接成一個字符串

+0

爲什麼不for循環以這種方式工作?對於我在範圍內(len(str)-1,1,-1):' –

+0

Re:'window.py = ...'你有一個名爲'window'的對象具有屬性'py'嗎?我不確定我明白。 –

回答

2

正確拆分路徑功能os.path.split(path)。它將確保分割將在正確的分頻器上爲其運行的操作系統完成。

>>> import os 
>>> os.path.split('/home/hoeter/PycharmProjects/Renpy/window.py') 
('/home/hoeter/PycharmProjects/Renpy', 'window.py') 
>>> os.path.split('/home/hoeter/PycharmProjects/Renpy/window.py')[1] 
'window.py' 

還有一個方便的功能做在一個步驟:

>>> os.path.basename('/home/hoeter/PycharmProjects/Renpy/window.py') 
'window.py' 
3

您可以將最後/用後得到的一切:

"/home/hoeter/PycharmProjects/Renpy/window.py".split('/')[-1]