こんにちは、かめちゃんです。最近いただく質問に『osモジュールっていつ使うの?』『何の役に立つの?』があります。
PyQの問題ですと実感しづらいかと思いますが、osモジュールは自分のPC内のファイルを操作する時に便利です。
開発環境の構築については、下記の記事をご覧ください。
とあるディレクトリ(フォルダ)に存在するファイルの一覧が欲しい。(今回は対象のディレクトリ内で動作させています。)
os.listdir(ディレクトリパス)
で対象のディレクトリ内のファイル、ディレクトリ一覧を取得し、 os.path.isfile()
でファイルかどうか判定します。
import os path = '.' for file_name in os.listdir(path): if os.path.isfile(os.path.join(path, file_name)): print(file_name)
拡張子が txt
のファイルだけ(今回は、globは使いません)
import os path = '.' for file_name in os.listdir(path): file_path = os.path.join(path, file_name) if os.path.isfile(file_path): root, ext = os.path.splitext(file_path) if ext == '.txt': print(file_name)
また、ファイル名の先頭に old_
を付けてリネイムしたい場合などは os.rename(元ファイルパス、新しいファイルパス)
で変更できます。
os.rename(os.path.join(path, file_name),
os.path.join(path, 'old_' + file_name))
ファイルが数個の場合は手作業でよいのですが、ファイル数が100、1000などの場合に簡単にファイル操作ができ、便利です。
他にも特定の文字列を内部に含むファイルを絞る、とあるディレクトリ(フォルダ)内のファイル(子ディレクトリを含む)を検索するなど、PyQの問題に便利なosモジュールを利用する問題があります。
問題一覧までは誰でも閲覧できますので、のぞいてみてください。(*^_^*)ノ