溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

如何在python 中使用os

發(fā)布時(shí)間:2021-05-26 09:38:38 來(lái)源:億速云 閱讀:145 作者:Leah 欄目:開(kāi)發(fā)技術(shù)

本篇文章為大家展示了如何在python 中使用os,內(nèi)容簡(jiǎn)明扼要并且容易理解,絕對(duì)能使你眼前一亮,通過(guò)這篇文章的詳細(xì)介紹希望你能有所收獲。

獲取文件所在路徑

import os
os.path.dirname(__file__) 獲取當(dāng)前文件的所在路徑

輸入:

import os
from reptile import *
print(os.path.dirname(__file__))

輸出:

F:\Python\python.exe F:/Python/pag/dict_usage.py
F:/Python/pag

1-1.print (os.path.dirname(os.path.dirname(__file__))) 獲取當(dāng)前文件的所在目錄的上級(jí)路徑

輸入:

import os
from reptile import *
print(os.path.dirname(os.path.dirname(__file__)))

輸出:

F:\Python\python.exe F:/Python/pag/dict_usage.py
F:/Python

1-2.print (os.path.dirname(os.path.dirname(os.path.dirname(__file__)))) 獲取當(dāng)前文件的所在目錄的上級(jí)目錄的上級(jí)路徑

輸入:

import os
from reptile import *
print (os.path.dirname(os.path.dirname(os.path.dirname(__file__))))

輸出:

F:\Python\python.exe F:/Python/pag/dict_usage.py
F:/

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

輸入:
print (os.getcwd())

輸出:
F:\Python\pag

3.os.name()——判斷現(xiàn)在正在實(shí)用的平臺(tái),Windows 返回 ‘nt‘; Linux 返回'posix‘

4,os.listdir()——指定所有目錄下所有的文件和目錄名。

輸入:
print (os.listdir())
輸出:
F:\Python\python.exe F:/Python/pag/dict_usage.py
['CRVanguard.py', 'dict_usage.py', 'establish_review.py', 'invoketestcase.py', '__init__.py', '__pycache__']
#以列表的形式全部列舉出來(lái),其中沒(méi)有區(qū)分目錄和文件。

5.os.remove()——?jiǎng)h除指定文件

輸入:
print (os.remove('E:\python-3.2.3.amd64.msi'))
輸出:
F:\Python\python.exe F:/Python/pag/dict_usage.py
None

6. os.rmdir()——?jiǎng)h除指定目錄

7. os.mkdir()——?jiǎng)?chuàng)建目錄注意:這樣只能建立一層,

8.os.makedirs()——遞歸建立目錄

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

10.os.path.isdir()——判斷指定對(duì)象是否為目錄。是True,否則False

輸入:
print (os.path.isdir('lib'))
輸出:
F:\Python\python.exe F:/Python/pag/dict_usage.py
False

11.os.path.exists()——檢驗(yàn)指定的對(duì)象是否存在。是True,否則False.例:

輸入:
print (os.path.exists('./lib'))
輸出:
F:\Python\python.exe F:/Python/pag/dict_usage.py
False

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

輸入:
print (os.path.split('E:\requests-2.18.4.tar.gz.asc'))
輸出:
F:\Python\python.exe F:/Python/pag/dict_usage.py
('E:', '\requests-2.18.4.tar.gz.asc')

此處只是把前后兩部分分開(kāi)而已。就是找最后一個(gè)‘/‘??蠢樱?/p>

輸入:
print (os.path.split('E:\ '))
輸出:
F:\Python\python.exe F:/Python/pag/dict_usage.py
('E:\\', ' ')

13.os.system()——執(zhí)行shell命令。例:

如何在python 中使用os

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

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

輸入:
#!/usr/bin/python
# -*- coding: UTF-8 -*-

import os, sys

path = "/tmp"

# 查看當(dāng)前工作目錄
retval = os.getcwd()
print "當(dāng)前工作目錄為 %s" % retval

# 修改當(dāng)前工作目錄
os.chdir( path )

# 查看修改后的工作目錄
retval = os.getcwd()

print "目錄修改成功 %s" % retval

輸出:
當(dāng)前工作目錄為 /www
目錄修改成功 /tmp

15.os.path.getsize()——獲得文件的大小,如果為目錄,返回0

輸入:
print (os.path.getsize('F:\QCExplorer.ini'))
輸出:
F:\Python\python.exe F:/Python/pag/dict_usage.py
456

16.os.path.abspath()——獲得絕對(duì)路徑。

輸入:
print (os.path.abspath('.'))
輸出:
F:\Python\python.exe F:/Python/pag/dict_usage.py
F:\Python\pag

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

輸入:
print (os.path.join('F:\ ','lavu.exl'))
輸出:
F:\Python\python.exe F:/Python/pag/dict_usage.py
F:\ \lavu.exl

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

輸入:
print (os.path.basename('F:\QCExplorer.ini'))
輸出:
F:\Python\python.exe F:/Python/pag/dict_usage.py
QCExplorer.ini

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

輸入:
print (os.path.dirname('F:\QCExplorer.ini'))
輸出:
F:\Python\python.exe F:/Python/pag/dict_usage.py
F:\

20.獲得當(dāng)前程序所在的實(shí)際目錄

輸入:
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]
輸出:
F:\Python\python.exe F:/Python/pag/dict_usage.py
F:\Python\pag\dict_usage.py
('F:\\Python\\pag', 'dict_usage.py')
F:\Python\pag

重點(diǎn):用法

?在Python 的os 模塊中提供了system()用來(lái)執(zhí)行系統(tǒng)命令。

比如我們要執(zhí)行E:\\test_object\\目錄

下的all_test.py 文件,可以這樣來(lái)實(shí)現(xiàn):

#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‘)

?組合用法:

  • 通過(guò)os.listdir()可以獲取目錄下的所有文件

  • 通過(guò)os.path.getmtime(path) #返回在此path下最后一次修改的時(shí)間

  • 通過(guò)os.path.join(path, name)連接目錄和文件名

輸入:
result_dir = ('F:\\')
lists=os.listdir(result_dir)
#重新按時(shí)間對(duì)目錄下的文件進(jìn)行排列
lists.sort(key=lambda fn: os.path.getmtime(result_dir+"\\"+fn))
print ('最新的文件為: ' + lists[-1])
file = os.path.join(result_dir,lists[-1])
print(file)
輸出:
F:\Python\python.exe F:/Python/pag/dict_usage.py
最新的文件為: 我以月夜寄相思.txt
F:\我以月夜寄相思.txt

Process finished with exit code 0

python可以做什么

Python是一種編程語(yǔ)言,內(nèi)置了許多有效的工具,Python幾乎無(wú)所不能,該語(yǔ)言通俗易懂、容易入門(mén)、功能強(qiáng)大,在許多領(lǐng)域中都有廣泛的應(yīng)用,例如最熱門(mén)的大數(shù)據(jù)分析,人工智能,Web開(kāi)發(fā)等。

上述內(nèi)容就是如何在python 中使用os,你們學(xué)到知識(shí)或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識(shí)儲(chǔ)備,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI