Python中os模組

回憶不說話發表於2018-07-03

os 模組提供了非常豐富的方法用來處理檔案和目錄。

 

opration system 作業系統,os模組獲取電腦的相關資訊,並且有很強大的檔案和資料夾操作的能力。在操作檔案或者資料夾的時候,就要引入os模組

import os

cpuCount = os.cpu_count()

print(cpuCount)

獲取電腦Cpu的個數,輸出結果如下:

 

name = os.name

print(name)

輸出結果為:

    nt代表的是windows作業系統,linux為posix。

相對路徑

 

result = os.path.exists('2.home.py')

if result:
    
    print('存在')
    
else:
    
    print('不存在')

檔案不存在就會輸出不存在。

在桌面上建立一個“os測試”的資料夾,資料夾的目錄為“C:\Users\Administrator\Desktop\os測試”

 

result = os.path.exists('C:/Users/Administrator/Desktop/os測試/python.txt')

print(result)

輸出結果為“True”就是目標資料夾中有這個檔案,輸出結果為“False”就是目標資料夾中沒有這個檔案。

絕對路徑

 

result = os.getcwd()

print(result)

這個結果就是當前檔案的絕對路徑。

在計算機當中,獲取當前檔案路徑,用'.',獲取父檔案路徑,用‘..’

 

result = os.path.abspath('.')

print(result)

result = os.path.abspath('..')

print(result)

獲取指定檔案的對應的絕對路徑

 

result = os.path.abspath('週二.txt')

print(result)

獲取檔案路徑中的某一部分,例如剛才建立的“C:\Users\Administrator\Desktop\os測試”

 

result = os.path.basename('C:/Users/Administrator/Desktop/os測試')

print('路徑的basename:{}'.format(result))

執行結果為:

公共部分的輸出:

 

result = os.path.commonpath(['C:/Users/a/Desktop/os測試',
                             'C:/Users/a/Desktop/同屏',
                             'C:/Users/a/Desktop/資料夾集合'])

print('路徑的公共部分為:{}'.format(result))

執行結果為:

以"/"分割,將路徑分成幾部分,找到公共的這一個部分。

 

result = os.path.commonpath(['http://www.baidu.com',
                             'http://www.jd.com',
                             'http://www.taobao.com'])

print('網址的公共部分為:{}'.format(result))

輸出結果為:

directory name 獲取指定檔案所在的資料夾路徑。

 

result = os.path.dirname('C:/Users/Administrator/Desktop/os測試/python.txt')

print(result)

獲取資料夾 資訊資料夾資訊包括 建立日期 修改日期  訪問日期

 

import  time

#getctime  獲取

result = os.path.getctime('C:/Users/Administrator/Desktop/os測試')

print('檔案建立日期是:{}'.format(time.localtime(result)))

執行結果是:

ime.struct_time(tm_year=2018, tm_mon=7, tm_mday=3, tm_hour=9, tm_min=43, tm_sec=50, tm_wday=1, tm_yday=184, tm_isdst=0)

access 訪問

 

result = os.path.getatime('C:/Users/Administrator/Desktop/os測試')

print('檔案訪問日期是:{}'.format(time.localtime(result)))

執行結果為:

檔案訪問日期是:time.struct_time(tm_year=2018, tm_mon=7, tm_mday=3, tm_hour=11, tm_min=3, tm_sec=48, tm_wday=1, tm_yday=184, tm_isdst=0)

modify 修改

 

result = os.path.getmtime('C:/Users/Administrator/Desktop/os測試')

print('檔案修改日期是:{}'.format(time.localtime(result)))

執行結果為:

檔案修改日期是:time.struct_time(tm_year=2018, tm_mon=7, tm_mday=3, tm_hour=11, tm_min=3, tm_sec=48, tm_wday=1, tm_yday=184, tm_isdst=0)

size 尺寸 獲取的是位元組大小

result = os.path.getsize('C:/Users/Administrator/Desktop/os測試')

print(result)

執行結果是0,說明檔案大小是0.

isFile   判斷是否是檔案

result = os.path.isfile('C:/Users/Administrator/Desktop/os測試/python.txt')

print('{}'.format(result))

檔案分割

spilt 分割     分割路徑 

 

result = os.path.split('C:/Users/Administrator/Desktop/os測試/python.txt')

print('{}'.format(result))

執行結果為:

('C:/Users/Administrator/Desktop/os測試', 'python.txt')

以檔案字尾分割

 

result = os.path.splitext('C:/Users/Administrator/Desktop/os測試/python.txt')

print('{}'.format(result))

執行結果為:

('C:/Users/Administrator/Desktop/os測試/python', '.txt')

change  改變當前所在的目錄

# os.mkdir('test')
os.chdir('test')

os.path.abspath('..')

os.chdir(os.path.pardir)

print('111{}'.format(os.getcwd()))

os.mkdir 是建立一個檔案。

檔案讀寫

# open 開啟
# 開啟指定的檔案
# 如果檔案不存在 則建立

 

f = open('os.txt','w',encoding='utf-8')

f.write('Hello World\n')

f.write('你好\n')

f.writelines(['張三\n','李四\n','王五\n'])

f.close()

# 當檔案關閉後 不能再繼續對這個檔案進行操作

在寫的時候還有一種寫法:

 

with open('code2.txt','r',encoding='utf-8') as f:

read

 

f = open('code.txt','r',encoding='utf-8')
# 讀一行
content = f.readline()
print(content)
# 將讀出的結果 放入列表中
content  = f.readlines()
print(content)
f.close()

檔案內容追加

 

 

# 檔案內容追加---------------------
f = open('new.txt','w',encoding='utf-8')

f.write('a,b,c,d\n')

f.close()

# a : append 追加;新增

f = open('new.txt','a',encoding='utf-8')

f.write('e')

f.close()

執行結果為:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

相關文章