1. 程式人生 > >python 小白(無編程基礎,無計算機基礎)的開發之路 輔助知識3 python os 用法

python 小白(無編程基礎,無計算機基礎)的開發之路 輔助知識3 python os 用法

padding 我們 .so mtime mage os.chdir 實現 exists 返回

  • 獲取文件所在路徑
  • import os
  1. os.path.dirname(__file__) 獲取當前文件的所在路徑
  2. print (os.path.dirname(os.path.dirname(__file__))) 獲取當前文件的所在目錄的上級路徑

  3. print (os.path.dirname(os.path.dirname(os.path.dirname(__file__)))) 獲取當前文件的所在目錄的上級目錄的上級路徑

1. os.name()——判斷現在正在實用的平臺,Windows 返回 ‘nt‘; Linux 返回’posix‘

2. os.getcwd()——得到當前工作的目錄。

3. os.listdir()——指定所有目錄下所有的文件和目錄名。例:

技術分享

  以列表的形式全部列舉出來,其中沒有區分目錄和文件。

4. os.remove()——刪除指定文件

5. os.rmdir()——刪除指定目錄

6. os.mkdir()——創建目錄

  註意:這樣只能建立一層,要想遞歸建立可用:os.makedirs()

7. os.path.isfile()——判斷指定對象是否為文件。是返回True,否則False

8. os.path.isdir()——判斷指定對象是否為目錄。是True,否則False。例:

技術分享

9. os.path.exists()——檢驗指定的對象是否存在。是True,否則False.例:

技術分享

10. os.path.split()——返回路徑的目錄和文件名。例:

技術分享

此處只是把前後兩部分分開而已。就是找最後一個‘/‘。看例子:

技術分享

11. os.getcwd()——獲得當前工作的目錄(get current work dir)

12. os.system()——執行shell命令。例:

技術分享

註意:此處運行shell命令時,如果要調用python之前的變量,可以用如下方式:

var=123
os.environ[‘var‘]=str(var) //註意此處[]內得是 “字符串”
os.system(‘echo $var‘)

13. os.chdir()——改變目錄到指定目錄

14. os.path.getsize()

——獲得文件的大小,如果為目錄,返回0

15. os.path.abspath()——獲得絕對路徑。例:

技術分享

16. os.path.join(path, name)——連接目錄和文件名。例:

技術分享

17.os.path.basename(path)——返回文件名

技術分享

18. os.path.dirname(path)——返回文件路徑

技術分享

19. 獲得程序所在的實際目錄

技術分享
import os
import sys

if __name__ == "__main__":
    print os.path.realpath(sys.argv[0])
    print os.path.split(os.path.realpath(sys.argv[0]))
    print os.path.split(os.path.realpath(sys.argv[0]))[0]
技術分享

執行結果

1 2 3 /home/jihite/ftp/del.py (‘/home/jihite/ftp‘, ‘del.py‘) /home/jihite/ftp 
  • os.path.split()把目錄和文件區分開
1 2 3 4 5 >>> import os >>> os.path.split("a/b/c/d") (‘a/b/c‘, ‘d‘) >>> os.path.split("a/b/c/d/") (‘a/b/c/d‘, ‘‘)

*********************

要執行的命令,相當於在Windows的cmd窗口中輸入的命令。

如果是 linux 系統的話就是linux 的 終端輸入的命令了

#coding=utf-8
from selenium import webdriver
import os
driver = webdriver.Firefox()
file_path = ‘file:///‘ + os.path.abspath(‘checkbox.html‘)
driver.get(file_path)

---------------------

  • 在Python 的os 模塊中提供了system()用來執行系統命令。

比如我們要執行E:\\test_object\\目錄
下的all_test.py 文件,可以這樣來實現:

#coding=utf-8
import os
os.system(‘E:\\test_object\\all_test.py‘)

或者

import os
os.chdir("E:\\test_object")
os.system(‘Python all_test.py‘)

-----------------

  • 通過os.listdir()可以獲取目錄下的所有文件
  • 通過os.path.getmtime(path) #返回在此path下最後一次修改的時間
  • 通過os.path.join(path, name)連接目錄和文件名

#coding=utf-8
import os
#定義文件目錄
result_dir = ‘E:\\test_object\\report‘
lists=os.listdir(result_dir)
#重新按時間對目錄下的文件進行排列
lists.sort(key=lambda fn: os.path.getmtime(result_dir+"\\"+fn))
print (‘最新的文件為: ‘+lists[-1])
file = os.path.join(result_dir,lists[-1])
print file

技術分享

python 小白(無編程基礎,無計算機基礎)的開發之路 輔助知識3 python os 用法