python-OS

1.操作文件

import os
# 重命名文件
print(os.rename('cpx.txt','cpx1.txt'))
# 絕對路徑,就是從盤符(如:C\D\E\F盤開始一路找到對應的文件),使用絕對路徑刪除文件
# print(os.remove(r'D:\PycharmProjects\untitled\IoVersusOs\cpx1.txt'))
# 相對路徑,基於當前文件寫路徑,cpx2.txt和當前開發文件同一個路徑
# 刪除文件
os.remove("cpx2.txt")

2.操作目錄

import os
# 使用相對路徑創建目錄
os.mkdir("md")
# 使用絕對路徑創建目錄,只適合在自己的電腦,因爲不知道別人的電腦,絕對路徑是什麼樣的
os.mkdir(r"D:\PycharmProjects\untitled\IoVersusOs\md1")

# 獲取目錄
print(os.getcwd())
# 刪除目錄
os.rmdir("md")

# 刪除非空的目錄
import shutil
shutil.rmtree("md1")

3.獲取操作系統信息

# 獲取操作系統   posix , nt , java, 對應linux/windows/java虛擬機
print(os.name)  # 輸出結果 nt
# 獲取當前操作系統的環境變量
print(os.environ)

4.獲取文件或者文件夾的信息

# 獲取指定路徑下所有文件夾和文件
print(os.listdir("../IoVersusOs"))  # 輸出結果  ['IO.py', 'md', 'md1', 'my.json', 'OS.py']
# 查看文件和文件夾的絕對路徑
print(os.path.abspath("../IoVersusOs"))  # 輸出結果 D:\PycharmProjects\untitled\IoVersusOs
# 路徑的拼接
pathStr = os.path.join(r'D:\PycharmProjects', 'untitled', 'IoVersusOs')
print(pathStr)  # 輸出結果 D:\PycharmProjects\untitled\IoVersusOs
# 拆分路徑
splitPath = os.path.split(r'D:\PycharmProjects\untitled\IoVersusOs')
print(splitPath)  # 輸出結果 ('D:\\PycharmProjects\\untitled', 'IoVersusOs')
# 獲取文件擴展名
fileExtension = os.path.splitext('OS.py')
print(fileExtension) # 輸出結果 ('OS', '.py')
# 判斷該路徑是否爲文件夾
print(os.path.isdir(r'D:\PycharmProjects\untitled\IoVersusOs'))  # 輸出結果True
# 判斷該路徑是否爲文件
print(os.path.isfile(r'D:\PycharmProjects\untitled\IoVersusOs\OS.py'))  # 輸出結果True
# 獲取文件大小
print(os.path.getsize(r'D:\PycharmProjects\untitled\IoVersusOs\OS.py'))  # 輸出結果 2051
# 獲取當前路徑的文件夾名稱
print(os.path.dirname(r'D:\PycharmProjects\untitled\IoVersusOs\OS.py'))  # 輸出結果 D:\PycharmProjects\untitled\IoVersusOs
# 獲取文件或者文件夾或者文件的基礎名稱
print(os.path.basename(r'D:\PycharmProjects\untitled\IoVersusOs\OS.py'))  # 輸出結果 OS.py

5.拷貝文件

def fileCopy(srcPath, desPath):
    # 判斷文件是否存在和是不是文件
    if os.path.exists(srcPath):
        if not os.path.isfile(srcPath):
            print('{}不是文件'.format(srcPath))
            return
    else:
        print('文件{}不存在'.format(srcPath))
        return
    # 打開源文件和目標文件
    srcFile = open(srcPath, 'rb')
    desFile = open(desPath, 'wb')
    # 獲取源文件的大小,以字節爲單位
    size = os.path.getsize(srcPath)
    while size > 0:
        # 讀取1024字節
        content = srcFile.read(1024)
        # 寫入
        desFile.write(content)
        size -= 1024
        # 關閉文件
        srcFile.close()
        desFile.close()
if __name__ == "__main__":
    fileCopy(r'cpx.txt','cpx1.txt')

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章