PythonでWindows操作 #1
リストに基づいたフォルダ作成
はじめに
よく機械学習などで使われるPythonですが、今回はWindowsを操作する第一回目として、フォルダの作成をしてみたいと思います。
使用環境
1.リストからフォルダ作成
Pythonのプログラム単体で作ることのできるリストからフォルダを生成します。 Pythonの基本的な使い方に関しては、以下のサイトを参考にしてください。
例1 連番のフォルダ
00から99までの100個のフォルダを作ってみます。 まずはじめに、00から99までの文字列が入ったリストを作っていきます。
numbers = [] for x in range(100): numbers.append("{:02}".format(x)) # ゼロ埋めした文字列
今回使うのは、Python上でWindowsのコマンドプロンプトを操作する os.system
を使います。windowsのコマンドプロンプトでは mkdir <フォルダ名>
でフォルダを作成することができるので、
import os #<=忘れない!! numbers = [] for x in range(100): numbers.append("{:02}".format(x)) for name in numbers: os.system("mkdir {}".format(name))
これで、ソースの置かれているルートディレクトリに00から99までのフォルダが生成されました。 どうしても1行で書きたい変態さんはこちら。。
for i in range(100): os.system("mkdir {:02}".format(i))
例2 偶数番のフォルダ
上の例1のコードを少し変えるだけで偶数番だけのフォルダの作成ができます。
import os numbers = [] step = 2 # stepを2に for x in range(0, 100, step): numbers.append("{:02}".format(x)) for name in numbers: os.system("mkdir {}".format(name))
for i in range(0, 100, 2): os.system("mkdir {:02}".format(i))
2.CSVデータなどからフォルダ作成
CSVのような外部リストからフォルダを作りたい時結構ありますね。今回はExcelのオートフィル機能を使ってフォルダを作成します。
まずはExcelで何らかのデータを作成 ファイル>名前を付けて保存から、”CSV[カンマ区切り]”を選択してルートディレクトリに保存。あとはPythonの標準モジュールのcsvを使ってリストを作成して、フォルダを生成します。
import os import csv #<=忘れない! name = [] with open("Book1.csv", mode="r") as file: read = csv.reader(file) for line in read: name += line # lineはリストで与えられる for n in name: os.system("mkdir {}".format(n))
無事に作成されました。。
さいごに
今回はPythonのWindows活用法としてリストからフォルダを作成してみました。今回のプログラムの一部を変えるだけで、AからZのフォルダそれぞれに00から99までのフォルダを作成、といったこともできると思うのでぜひ実践してみてください!
では(@^^)/~~~