網站首頁 編程語言 正文
介紹
? os模塊是Python和操作系統進行交互的一個接口,它提供了許多操作文件及文件夾的函數。可以用于文件名、文件路徑、文件夾相關的操作。?
本博客記錄python中os庫的一些函數使用。
1 listdir(path: str)
listdir()
函數輸入一個目錄,返回該目錄下的所有文件夾名稱和文件名稱。注意是名稱而非路徑。
舉例,比如在路徑D:\tmp
下有如下文件,
那么,os.listdir('D:\\tmp')
返回的內容為,
['文件1.txt', '文件2.txt', '文件3.txt', '文件夾1', '文件夾2', '文件夾3']
代碼為,
import os path = 'D:\\tmp' files = os.listdir(path) print(files)
2 path.isdir(path: str)
path.isdir()
函數返回布爾值,表示輸入的路徑是否為文件夾,如果是返回True
,否則返回False
。
舉例,比如path.isdir('D:\\tmp\\文件夾1')
返回True
,而path.isdir('D:\\tmp\\文件1.txt')
返回False
。
代碼如下,
import os if os.path.isdir('D:\\tmp\\文件夾1') == True: print('True') if os.path.isdir('D:\\tmp\\文件1.txt') == False: print('False')
輸出為,
TrueFalse
3 path.isfile(path: str)
path.isfile()
函數返回布爾值,表示輸入的路徑是否為文件,如果是返回True
,否則返回False
。
舉例,比如path.isfile('D:\\tmp\\文件夾1')
返回False
,而path.isdir('D:\\tmp\\文件1.txt')
返回True
。
代碼如下,
import os if os.path.isfile('D:\\tmp\\文件夾1') == False: print('False') if os.path.isfile('D:\\tmp\\文件1.txt') == True: print('True')
輸出為,
False
True
4 path.join(path: str, file: str)
path.join()
函數拼接兩個路徑,在windows下拼接符為\\
,因此path.join(path, file)
等價于path + '\\' + file
。但不同系統的拼接符是不一樣的,因此使用path.join()
函數拼接兩個路徑會更魯棒。
代碼如下,
import os path = 'D:\\tmp' for file in os.listdir(path): filename = file filepath = os.path.join(path, filename) print(f'filename = {filename}, filepath = {filepath}')
輸出為,
filename = 文件1.txt, filepath = D:\tmp\文件1.txt
filename = 文件2.txt, filepath = D:\tmp\文件2.txt
filename = 文件3.txt, filepath = D:\tmp\文件3.txt
filename = 文件夾1, filepath = D:\tmp\文件夾1
filename = 文件夾2, filepath = D:\tmp\文件夾2
filename = 文件夾3, filepath = D:\tmp\文件夾3
5 path.getsize(path: str)
path.getsize()
函數返回輸入文件的大小,單位是字節(Byte)。如果輸入為文件夾的話,返回0。
舉例,比如path.getsize('D:\\tmp\\文件夾1')
返回0,path.getsize('D:\\tmp\\文件1.txt')
返回文件1.txt的大小。
代碼如下,
import os size1 = os.path.getsize('D:\\tmp\\文件夾1') size2 = os.path.getsize('D:\\tmp\\文件1.txt') print(f'size1 = {size1}字節, size2 = {size2}字節')
輸出為,
size1 = 0字節, size2 = 8字節
原文鏈接:https://blog.csdn.net/YMWM_/article/details/127541442
相關推薦
- 2022-10-19 Android項目中引入aar包的正確方法介紹_Android
- 2023-04-27 解讀react的onClick自動觸發等相關問題_React
- 2022-03-30 android?RecyclerView添加footerview詳解_Android
- 2022-07-14 C#把dll分別放在指定的文件夾的方法步驟_C#教程
- 2024-01-09 idea如何設置自動換行
- 2022-11-09 Python?Pandas讀寫txt和csv文件的方法詳解_python
- 2022-10-15 Python?UnicodedecodeError編碼問題解決方法匯總_python
- 2022-09-14 React路由組件傳參的三種方式(params、search、state)_React
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支