2012-03-23 207 views
0

我剛剛進入蟒蛇最近,現在我通過練習(我想象是很簡單的,但是對我足夠的挑戰性)創建的小工具文件到文件夾進行排序。由分離器的第一次出現分離的字符串

到目前爲止,它已經持續相當不錯,但現在我已經遇到了一個問題:

我的文件的格式如下: myAsset_prefix1_prefix2_prettyName.ext; (即Tiger_texture_spec_brightOrange.png)

myAsset通常具有不同的長度,因爲它取決於名稱。

我想在一個單獨的文件夾相同的資產(「myAsset_」標籤)的每個文件進行排序。

複製到一個單獨的文件夾等是沒有挑戰,但.. 我不想每次手動更新數組創建/接收新的資產。 因此,而不是使用startswith操作,並使其在列表中運行的,我想我的腳本運行時,通過使腳本看看文件的名稱來構建陣列和存儲的一切直至幷包括第一「 _「在變量/數組中。

這可能嗎?

+2

能否請您澄清標題是如何相關的問題嗎? – 2012-03-23 12:20:54

+2

這一切都始於「asset_tag = filename.split(‘_’)[0]」 – j13r 2012-03-23 12:21:28

+0

固定的 - 它是從其他Nexus Q攢了我ddnt後:回合在於S對不起! – 2012-03-23 13:07:40

回答

1

我想你想的glob模塊。這允許您列出符合特定格式的文件。

例如:

for filename in glob.glob(*.ext): 
    asset_tag = filename.split(" ")[0] 
+0

其實,我正在尋找的是.split操作:D 這實際上是我所需要的。謝謝! :d – 2012-03-23 13:05:25

+0

對於它的價值,'str.partition()'是像'str.split()'但它只是分裂您選擇的分隔符的第一次出現。 – 2012-03-23 14:00:59

+0

注意! Thx的額外信息! :) – 2012-03-23 14:42:13