本篇文章為大家帶來了關於Python的相關知識,其中主要介紹了關於內置模組OS如何打造SHELL端文件處理器的相關內容,下面一起來看一下,希望對大家有幫助。
【相關推薦:Python3影片教學 】
在講解包模組時我們提到透過sys 模組進行查看全域包路徑查看於註冊,今天我們嘗試了解下OS模組,這個模組主要作用就是打通程式於系統之間的通訊。
透過 help('modules') 我們能夠發現 OS 是作為python的內建模組出現的。
判斷檔案
import os print(os.path.isfile('demo.txt'))
如果是檔案則回傳True否則回傳False 。
判斷資料夾
import os print(os.path.isdir('../os'))
其中參數我們傳遞一個路徑,如果是資料夾回傳 True 否則回傳 False。
判斷檔案是否存在
這個應該是我們經常在腳本中使用的操作,存在我們則使用不存在則需要建立文件填充預設內容。
import os print(os.path.exists('ttttt.txt'))
同樣如果存在則回傳 True 否則回傳 False 。
獲取檔案大小
我們經常在伺服器上透過ls -al 查看檔案信息,其中就包括檔案大小這個屬性,作為python內建的模組肯定也少不了相關的屬性取得功能。
import os print(os.path.getsize('demo.txt'))
之前在操作Java 時經常需要取得檔案所在目錄,當時都是透過Java物件屬性取得的,而Python中自動幫我們處理了。
不知道你有沒有註意到上面我們獲取腳本所在目錄時通過../os 等方式,包括獲取路徑及文件章節中我們手動敲出來文件的完整路徑,實際上透過python自帶了。
import os print(os.path.abspath('practice.py'))
import os print(os.path.basename('practice.py'))
僅限我們傳入了全路徑的檔案dirname 才起作用,這個感覺有點雞肋
我們經常會出現路徑地址的拼接。 windows , linux 檔案分隔符不一樣,Java 中給我們提供了一個獲取分隔符的變量,但是python 直接忽略掉分隔符了,直接給我們提供一個拼接的方法。
import os print(os.path.join('parent','child'))
# 取得平台
##有的時候我們需要根據不同平台來執行不同的操縱,這個時候就需要取得到平台資訊了。import os print(os.name)
import os print(os.listdir)
#目前工作路徑
很多時候我們不回直接在腳本路徑執行腳本,往往都是透過絕對路徑或相對路徑來執行腳本,有的時候腳本會依賴執行路徑上的某些文件,所以取得執行腳本路徑至關重要。目錄操作
#關於檔案目錄新刪除相信也很重要吧。下面我們來看看如何操作。import os os.mkdir('test') print(os.getcwd()+'工作下的文件列表'+os.listdir()) os.rmdir('test')
#重命名檔案#
import os os.rename(old,new)
檔案屬性
我们能够看到打印了很多属性。
修改权限杀死进程
os.chmod(file) os.get_terminal_size() os.kill(10884,signal.SIGKILL)
打通shell
作为一个shell爱好者,我还是很喜欢使用shell 来实现的,尤其是在做系统初始化的时候这个时候没有python ,而shell 是linux 系统自带的,所以shell 脚本的时候还是很有必要的,我个人也是shell+python 相互辅佐的存在。我们知道shell 中直接 python xxx.py。 但是python 如何执行shell 呢?
import os name=os.system('ls -al')
上面我们提到获取平台信息 os.name ,我们可以根据这个命令来通过 os.system('cmd') 指定不同系统的cmd 命令。
【相关推荐:Python3视频教程 】
以上是Python內建模組OS如何打造SHELL端檔案處理器的詳細內容。更多資訊請關注PHP中文網其他相關文章!