python下os模組強大的重新命名方法renames

來源:互聯網
上載者:User

在python中有很多強大的模組,其中我們經常要使用的就是OS模組,OS模組提供了超過200個方法來供我們使用,並且這些方法都是和資料處理相關的,這裡介紹下重新命名這個方法。

OS的重新命名方法是os.rename,我用的ipython,這個玩意很是強大,只要按下TAB鍵,可以協助我們自動對齊和列出可以使用的方法,發現有2個方法,分別是rename和renames,2個方法,前面的rename使用過無數次,但是後面的renames還沒有使用過,今天有空,想看看到底有和用處---顧名思義,我覺得可能是批量修改吧,哈哈,下面我們來看下示範效果:

[root@localhost ~]# ipython       進入ipython工具   Python 2.6 (r26:66714, Dec 17 2010, 11:17:00)   Type "copyright", "credits" or "license" for more information.          IPython 0.10.1 -- An enhanced Interactive Python.   ?         -> Introduction and overview of IPython's features.   %quickref -> Quick reference.   help      -> Python's own help system.   object?   -> Details about 'object'. ?object also works, ?? prints more.          In [1]: import os                    匯入OS模組          In [2]: os.mkdir("/tmp/test")        建立目錄          In [3]: os.listdir("/tmp/test")         Out[3]: []          In [4]: os.mkdir("/tmp/test/test1")              建立目錄          In [5]: os.listdir("/tmp/test/")   Out[5]: ['test1']          In [6]: os.listdir("/tmp/test/test1")   Out[6]: []          In [7]: os.ren                    按Tab鍵自動對齊的效果   os.rename   os.renames          In [7]: os.rename("/tmp/test/test1","/tmp/test/test2")          重新命名目錄名          In [8]: os.listdir("/tmp/test/")    修改成功   Out[8]: ['test2']          In [9]: os.rename                 按Tab鍵自動對齊的效果   os.rename   os.renames          In [9]: os.rename("/tmp/test/test2","/tmp/test1/test3")          大家注意看下這個命令和上面的命令的區別,我不僅僅是要重新命名最後的目錄名,連前面的目錄也要重新命名   ---------------------------------------------------------------------------OSError                                   Traceback (most recent call last)          /root/<ipython console> in <module>()          OSError: [Errno 2] No such file or directory          嘿嘿,報錯了,說沒有這個目錄,   下面在看下下面這個強大的方法吧,哈哈          In [10]: os.renames("/tmp/test/test2","/tmp/test1/test3")          In [11]: os.listdir("/tmp/test1/test3")   Out[11]: []          嘿嘿,居然成功了,真是強大啊,子目錄能改,上級目錄也能改,這個法子也許對我們工作會有協助吧。   In [12]: os.listdir("/tmp/test1")   Out[12]: ['test3']

同樣的,他可以修改目錄名,不知道能否連檔案名稱,目錄名一起修改呢,下面我們再來看下效果:

In [22]: os.listdir("/tmp/test1/test3/")   Out[22]: ['test']              建立一個空檔案          In [23]: cat /tmp/test1/test3/test          In [24]: os.renam   os.rename   os.renames             In [24]:   os.renames("/tmp/test1/test3/test","/tmp/test/test2/test3")          批量修改檔案名稱和目錄名,嘿嘿,果然也成功了。          In [25]: os.listdir("/tmp/test/test2/test3")   ---------------------------------------------------------------------------OSError                                   Traceback (most recent call last)          /root/<ipython console> in <module>()          OSError: [Errno 20] Not a directory: '/tmp/test/test2/test3'       In [26]: os.listdir("/tmp/test/test2/")    瀏覽效果   Out[26]: ['test3']          In [27]:

希望本文能對大家的工作和學習有協助,如果感興趣,可以自己去實驗下。

本文出自 “你是路人甲還是霍元甲” 部落格,請務必保留此出處http://world77.blog.51cto.com/414605/561190

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.