1. 程式人生 > >11.3 OS模塊

11.3 OS模塊

Python OS模塊

OS模塊
# -*-coding:utf-8 -*-
__author__ = ‘xiaojiaxin‘
__file_name__ = ‘OS模塊‘

import os
import time

#打印當前工作目錄
print(os.getcwd())
# C:\Users\xiaojiaxin\PycharmProjects\fullstack1\week3\day12

#修改當前的工作目錄
# print(os.chdir(r"C:\User"))
# print(os.getcwd())

#返回當前工作目錄
# print(os.curdir())
#返回當前目錄的父目錄字符串名
# print(os.pardir( ))

#在當前目錄下創建多層目錄
#print(os.makedirs("123\\jiaxin"))

#刪除文件夾,返回值為None,只能刪空文件,目錄下有文件不能刪除目錄
#print(os.removedirs("123\\jiaxin"))

#創建單個目錄
# print(os.mkdir("456"))
# print(os.mkdir("456\\abc"))  #直接創建兩層會報錯
#刪除單個目錄
# print(os.rmdir("456\\abc"))  #刪除abc目錄,456目錄保持不刪
#print(os.removedirs("456"))

#列出指定目錄下的所有文件和子目錄,包括隱藏文件,並以列表形式打開,重要
#r表示原生字符串,不需要轉義
dir1=os.listdir(r"C:\Users\xiaojiaxin\PycharmProjects\fullstack1\week3\day12")
print(dir1)
# [‘456‘, ‘OS模塊.py‘]

#os.remove只能刪除文件,不能刪除文件目錄
#print(os.remove("456\\oj.py"))

#修改文件或目錄的名字
#print(os.rename("456","ohh"))

#獲取文件信息,必會!!!
print(os.stat(‘.\\ohh‘))
# os.stat_result(st_mode=16895, st_ino=18295873486272314, st_dev=3225605757, st_nlink=1, st_uid=0, st_gid=0, st_size=0, st_atime=1521514679, st_mtime=1521514679, st_ctime=1521513980)
#文件大小信息,時間(最近修改時間,最近訪問時間,最近修改文件權限時間)
print(os.stat(".\\ohh").st_size)
# 0
print(os.stat(".\\ohh").st_atime)
# 1521514679.6086266   返回時間戳
print(time.localtime(os.stat(".\\ohh").st_atime))
#time.struct_time(tm_year=2018, tm_mon=3, tm_mday=20, tm_hour=10, tm_min=57, tm_sec=59, tm_wday=1, tm_yday=79, tm_isdst=0)
#返回結構化時間
#操作系統下的分隔符,win下為\ 反斜杠,Linux下為/  正斜杠
print(os.sep)
# 
#不同操作系統的換行符,win下為\r\n,linux下為\n,mac下為\r  換行
print(os.linesep)

#不同操作系統的路徑分割符,win下為;,linux下為 :
print(os.pathsep)

#輸字符串指示當前使用的操作系統,win下為nt,linux下為posix
print(os.name)
# nt
#執行shell命令,直接顯示
print(os.system("dir"))

#獲取環境變量
print(os.environ)
# environ({‘ALLUSERSPROFILE‘: ‘C:\\ProgramData‘, ‘APPDATA‘: ‘C:\\Users\\xiaojiaxin\\AppData\\Roaming‘, ‘CLASSPATH‘:

#找出他的絕對路徑
print(os.path.abspath(‘.\ohh‘))
# C:\Users\xiaojiaxin\PycharmProjects\fullstack1\week3\day12\ohh
#將path分割成目錄和文件名二元組返回
print(os.path.split(‘.\ohh‘))
# (‘.‘, ‘ohh‘)

#取文件夾所在的名字,有用!!!
print(os.path.dirname(r"C:\Users\xiaojiaxin\PycharmProjects\fullstack1\week3\day12\ohh"))
# C:\Users\xiaojiaxin\PycharmProjects\fullstack1\week3\day12
#返回path最後的文件名
print(os.path.basename(r"C:\Users\xiaojiaxin\PycharmProjects\fullstack1\week3\day12\ohh"))
# ohh

#如果path存在,返回true,否則返回false
p2=os.path.exists(r"C:\Users\xiaojiaxin\PycharmProjects\fullstack1\week3\day12\ohh")
print(p2)
# True

#判斷是否為絕對路徑
p3=os.path.isabs(r"C:\Users\xiaojiaxin\PycharmProjects\fullstack1\week3\day12\ohh")
print(p3)
#True

#判斷是否為目錄或文件
# os.path.isdir(path)
# os.path.isfile(path)
#路徑拼接,很重要
# os.path.join(path1,path2)

# 獲取路徑所獲取的時間
# os.path.getatime(path)
# os.path.getctime(path)
# os.path.getmtime(path)

11.3 OS模塊