みなさん、こんにちは!
タカハシ(@ntakahashi0505)です。
一般ビジネスマン&初心者向けということで、フォルダ操作に関する役立ちツールを作りながらPythonの基本中の基本を学んでいきます。
以前、以下の記事でPythonの魅力の一つが、その豊富なライブラリにあるとお伝えしました。
既に11万以上も公開されているライブラリも魅力ですが
そもそも、標準で同梱されているライブラリの中にも
- csv
- json
- HTML
- ファイルやディレクトリ
- 正規表現
- 数学
- 乱数
- インターネットアクセス
- データ圧縮
- パフォーマンス計測
…など、それはもう豊富なラインナップが含まれています。
とお伝えしている通り、公式のPythonディストリビューションに含まれている標準ライブラリだけでも、アイデア次第でかなりいろいろなことができそう…
正直どこから手をつけるか迷っちゃうのですが、手始めに「ファイルやディレクトリ」を操作しながら、Pythonに慣れ親しんでいければと思います。
ほら、大量のフォルダを自動でドバっと作成したりとか、現在のファイルツリーを取得したりとか、そういうのができたら便利そうじゃないですか。
まず今回は、osモジュールとフォルダ操作を題材にして標準モジュールの使い方をお伝えします。
では、行ってみましょう!
モジュールとは何か
まず、モジュールとは何かその定義を明確にしておきましょう。
Pythonの公式ドキュメントの「6. モジュール (module)」には、以下のように定義されています。
モジュールは Python の定義や文が入ったファイルです。ファイル名はモジュール名に接尾語 .py がついたものになります。
なんだか難しそうな定義ですね。
ただ、冷静になってよーく見てみると
- Pythonの定義や文が入っている
- ファイル名は(*.py)
…ん?これってただのpyファイル…のようですね。
そうなんです、モジュールは一連の関数を備えたPythonのプログラムです。そして、他のPythonプログラムに埋め込んで使用ができます。
モジュールを組み込むと、そのモジュールに含まれる便利な関数を、作成しているプログラムで使えるようになるということです。
そして、公式Pythonのディストリビューションには標準ライブラリとして多数のモジュール群が付属しているということですね。
モジュールをインポートする
モジュールを利用するには、そのモジュールを読み込む必要があり、そのことをインポートと言います。
モジュールをインポートするには、以下のimport文を使います。
読み込んだモジュールの関数は以下の形式で利用することができます。関数によっては括弧内に引数が一つ以上必要になります。
osモジュールとos.getcwd関数で現在の作業ディレクトリを調べる
では、試しにOSつまりオペレーティングシステムとやり取りするための機能を備えているosモジュールと、それに含まれる現在の作業ディレクトリを調べるos.getcwd関数を使ってみましょう。
ちなみに「getcwd」は「get current working directory」の略ですね。
モジュールをインポートしない場合
あ、もしかしたら万が一でインポートせずとも使えるかも知れませんので、確認してみましょう。
IDLEのShellウィンドウで以下入力してみてください。ちなみに、osモジュールをインポートしてなくても補完は機能しますので、 Ctrl + Space を積極的に使ってみてくださいね。
>>> os.getcwd()
入力して Enter をしてみると…
はいダメです。
NameError: name ‘os’ is not defined
「’os’って名前は定義されてないんだけど」って怒られちゃいました。やっぱりインポートしないとダメですね。
osモジュールのインポートしてos.getcwd関数を使う
では、おとなしくosモジュールをインポートしてから、os.getcwd関数を使うこととしましょう。
以下一行ずつShellウィンドウで入力して Enter です。
>>> import os
>>> os.getcwd()
おお、無事にフォルダパスが表示されましたね。
Shellウィンドウでos.getcwd関数を使うと、Pythonがインストールされているフォルダが現在の作業ディレクトリになるようです。
スクリプトファイルで現在の作業ディレクトリを調べる
では、Shellウィンドウではなく、任意の場所に保存されたPythonファイルのスクリプトでos.getcwd関数を実行するとどうなるでしょうか。
現在の作業ディレクトリは、Pythonファイルが保存されている場所になるでしょうか。
では、Ctrl + N で新規ファイルをEditorウィンドウで開いて、ササっと以下プログラムを入力しましょう。
import os
print(os.getcwd())
書いたら、Ctrl + S でデスクトップの「mkdir」というフォルダに「getcwd.py」というファイル名で保存しました。そして F5 キーで実行です。
ちゃんと、「getcwd.py」が作業フォルダになっているのが確認できました。
まとめ
Pythonで標準ライブラリのモジュールをインポートして使う方法についてお伝えしました。
今回はosモジュールと作業フォルダを知るos.getcwd関数を使いました。
osモジュールには他にも便利な関数がたくさんありますし、標準ライブラリには他にも便利なモジュールが含まれています。Pythonの世界…広いですね。
さて、次回はosモジュールを使って、フォルダを作成する方法についてお伝えしていきます。
どうぞお楽しみに!
連載目次:【初心者向けPython】基本の基本を学びながらフォルダ操作
非エンジニアの一般ビジネスマンの初心者向けにPythonでWindowsのファイルやフォルダを操作する簡単便利ツールの作り方を解説しながら、Pythonプログラミングの基本中の基本を学んでいくシリーズです。- Pythonで標準ライブラリのモジュールをインポートして使ってみよう
- Pythonでosモジュールのmkdir関数を使ってフォルダを作成する超簡単なプログラム
- Pythonプログラミングの基本中の基本!forループによる繰り返しの作り方
- Pythonでデータをまとめて取り扱う基本中の基本!リストの使い方とforループ
- Pythonで指定したフォルダが存在しているかどうかを調べるos.path.existsの使い方
- Pythonで条件分岐をする基本中の基本!if~else文の作り方
- Pythonでテキストファイルを開いてデータを読み込む基本中の基本
- Pythonで文字列を区切り文字や改行で分割してリスト化するsplitメソッドの使い方
- Pythonで文字列のスペース・タブ・改行を取り除くstripメソッドの使い方
- Pythonで開いたファイルのクローズを忘れやすい人のためのwith文の使い方
- Pythonでcsvファイルからデータを読み込む最初の一歩