【技術情報配信】Python使ってます?
お疲れ様です。マサダです。
今回は「Python」のプレゼンになります。
Pythonは、データ分析、機械学習、Web開発などのさまざまな分野で使用されており、
それらの開発にあたってのライブラリやフレームワークが豊富に用意されています。
また、多くのプラットフォームで動作します。
上記と被るところもありますが、利用メリットを挙げてみます。
・文法が簡単で覚えやすい。
・ライブラリ、フレームワークが豊富。
(おすすめはNumPy、Pandas、Matplotlib、Tkinter等々)
・クロスプラットフォーム
(Windows、Mac、Linuxなどの多くのOSで動作します)
・利用者が多い(ググれば欲しい情報が見つかる)
・Pythonさえインストールできれば使用可能
C言語に染まりきっていると、最初は取っつきにくいかもしれませんが、
慣れてしまえば簡単なツールなどはサクッと作成できます。
データ作成やデバッグ時のログ解析時に活用することで、
開発効率を上げる(楽する)ことが出来ると思います。
いい例がぱっと浮かびませんが、、、
「数百あるログファイル(csv)の特定列を抜き出し、それぞれファイル出力したい」
という場合であれば、以下のようなコードになるかと思います。
注:実行してませんので間違いがあるかもしれません。
また、例なので色々と固定にしてます。。
—————————————————–
import os
import csv
# 抽出する列のインデックス
column_index = 2
# ディレクトリ内のファイルを処理する
for filename in os.listdir(“.”):
if filename.endswith(“.csv”):
# 出力ファイル名作成
output_filename = “out_” + filename
with open(filename, “r”) as f_in, open(output_filename, “w”,
newline=”) as f_out:
reader = csv.reader(f_in)
writer = csv.writer(f_out)
for row in reader:
data = row[column_index]
writer.writerow([data] + row)
—————————————————–
こういった作業の場合、一度だけであれば、
エクセルやエディタ開いて頑張って対応もありかもしれませんが、(政田は無理です)
何度も実施が必要なケースではなんらかで自動化すると思います。
そんな時「Python」を選択肢の一つに加えることで、
対応可能なケースが広がりますよ。(データ解析とか熱いです)
※今回はPythonのプレゼンなので
「ShellでOKでは?」
というのはご勘弁ください:-)