獲取絕對路徑下的檔名和檔案字尾方法

技術小胖子發表於2017-11-08

在平時處理檔案的時候,都會用到模組os,今天運用os模組獲取絕對路徑下的檔案的檔名和字尾名,這裡測試檔案為:

1
2
3
4
5
6
7
8
9
10
11
12
13
[root@python ~]# cat testfile 
/usr/local/application/website/test.txt
/usr/local/application/website/test.txt
/usr/local/bin/test.sh
/usr/local/application/img/AEAFFEAG.jpg
/usr/local/application/img/AEAFAGEAG.jpg
/usr/local/application/CSS/up.css
/usr/local/application/PNG/good.png
/usr/local/application/img/AETTTGEAG.jpg
/usr/local/application/CSS/main.css
/usr/local/application/GIF/hello.gif
/usr/local/application/js/foot.js
[root@python ~]#


接下來編寫指令碼:

1
2
3
4
5
6
7
[root@python ~]# cat get_file_name.py
#!/usr/bin/env python
import os
with open(`/root/testfile`,`r`) as obj:
     for line in obj:
         print os.path.splitext(line.strip())
[root@python ~]#


執行指令碼輸出結果:

1
2
3
4
5
6
7
8
9
10
11
12
13
[root@python ~]# python  get_file_name.py
(`/usr/local/application/website/test``.txt`)
(`/usr/local/application/website/test``.txt`)
(`/usr/local/bin/test``.sh`)
(`/usr/local/application/img/AEAFFEAG``.jpg`)
(`/usr/local/application/img/AEAFAGEAG``.jpg`)
(`/usr/local/application/CSS/up``.css`)
(`/usr/local/application/PNG/good``.png`)
(`/usr/local/application/img/AETTTGEAG``.jpg`)
(`/usr/local/application/CSS/main``.css`)
(`/usr/local/application/GIF/hello``.gif`)
(`/usr/local/application/js/foot``.js`)
[root@python ~]#


從以上可以看出,每一行為一個元組,然後繼續修改get_file_name檔案:

1
2
3
4
5
6
7
8
9
[root@python ~]# cat get_file_name.py
#!/usr/bin/env python
# -*- coding:utf8 -*-
import os
with open(`/root/testfile`,`r`) as obj:
     for line in obj:
         print "檔案路徑為:%s   檔案字尾為:%s" %(os.path.splitext(line.strip())[0],os.path.splitext(line.strip())[1])
          
[root@python ~]#


再執行指令碼檢視結果:

1
2
3
4
5
6
7
8
9
10
11
12
13
[root@python ~]# python  get_file_name.py
檔案路徑為:/usr/local/application/website/test   檔案字尾為:.txt
檔案路徑為:/usr/local/application/website/test   檔案字尾為:.txt
檔案路徑為:/usr/local/bin/test   檔案字尾為:.sh
檔案路徑為:/usr/local/application/img/AEAFFEAG   檔案字尾為:.jpg
檔案路徑為:/usr/local/application/img/AEAFAGEAG   檔案字尾為:.jpg
檔案路徑為:/usr/local/application/CSS/up   檔案字尾為:.css
檔案路徑為:/usr/local/application/PNG/good   檔案字尾為:.png
檔案路徑為:/usr/local/application/img/AETTTGEAG   檔案字尾為:.jpg
檔案路徑為:/usr/local/application/CSS/main   檔案字尾為:.css
檔案路徑為:/usr/local/application/GIF/hello   檔案字尾為:.gif
檔案路徑為:/usr/local/application/js/foot   檔案字尾為:.js
[root@python ~]#


這裡主要是運用os模組的splitext函式功能,以`.`的分隔符將一個完整的檔案進行分割成元組,然後通過元組的下標獲取元組中的元素。





      本文轉自027ryan  51CTO部落格,原文連結:http://blog.51cto.com/ucode/1870919,如需轉載請自行聯絡原作者






相關文章