Pythonでos.scandir関数の使い方
環境
Python 3.9.7
説明
os.scandir(path=’.’)
これは、オペレーティングシステムがディレクトリのスキャン中にこの情報を提供した場合、
os.DirEntry オブジェクトがその情報を公開するからです。
DirEntryオブジェクト は is_dir() メソッド や is_file() メソッドが使用できます。
使用例
import os
# ファイルを列挙します
with os.scandir(path='C:\data2') as ret:
for cft in ret:
print(f'**************************')
print(f'ファイル名: {cft.name}')
print(f'絶対パス: {os.path.abspath(cft.path)}')
print(f'フォルダか : {cft.is_dir()}')
print(f'ファイルか: {cft.is_file()}')
import os
# ファイルを列挙します
with os.scandir(path='C:\data2') as ret:
for cft in ret:
print(f'**************************')
print(f'ファイル名: {cft.name}')
print(f'絶対パス: {os.path.abspath(cft.path)}')
print(f'フォルダか : {cft.is_dir()}')
print(f'ファイルか: {cft.is_file()}')
import os # ファイルを列挙します with os.scandir(path='C:\data2') as ret: for cft in ret: print(f'**************************') print(f'ファイル名: {cft.name}') print(f'絶対パス: {os.path.abspath(cft.path)}') print(f'フォルダか : {cft.is_dir()}') print(f'ファイルか: {cft.is_file()}')
実行結果
>python test.py
**************************
ファイル名: 11
絶対パス: C:\data2\11
フォルダか : True
ファイルか: False
**************************
ファイル名: 22
絶対パス: C:\data2\22
フォルダか : True
ファイルか: False
**************************
ファイル名: test.doc
絶対パス: C:\data2\test.doc
フォルダか : False
ファイルか: True
>python test.py
**************************
ファイル名: 11
絶対パス: C:\data2\11
フォルダか : True
ファイルか: False
**************************
ファイル名: 22
絶対パス: C:\data2\22
フォルダか : True
ファイルか: False
**************************
ファイル名: test.doc
絶対パス: C:\data2\test.doc
フォルダか : False
ファイルか: True
>python test.py ************************** ファイル名: 11 絶対パス: C:\data2\11 フォルダか : True ファイルか: False ************************** ファイル名: 22 絶対パス: C:\data2\22 フォルダか : True ファイルか: False ************************** ファイル名: test.doc 絶対パス: C:\data2\test.doc フォルダか : False ファイルか: True