pythonの独学での習得について
pythonは簡単に導入できるスクリプトのプログラムで、人気があっておすすめです。
特徴として、「ロボットの開発、機械学習などでのデータの分析、アプリの開発」などで使われ、多くのソフトに利用されている点があげられます。
ここではよく忘れてしまう基礎のコードを含めて、pythonについて備忘録っぽく話をしてみたいと思います。
python(読み方:パイソン)は、無料で配布されているスクリプトの言語です。
使い方が簡単なので、プログラミングの入門として最適です。
独学で学習したい方も、「オンラインの動画、セミナー、研修、本、ブログ」などの講座がすごく多くあり、例題も多く、練習して習得にかかる期間が短くできて、利点があります。
普及しているバージョンは、「2.7、3.x」とありますが、初心者の方は迷わず「3系」を選びましょう。
名前の由来は、イギリスのテレビ局「BBC」が製作したコメディ番組『空飛ぶモンティ・パイソン』です。
開発環境について
統合開発環境(ide)は、windowsでもlinuxでも動くJupyter Notebookをお薦めします。ライブラリもwebからダウンロードできて便利です。
※Jupyter Notebookの使い方は、他サイトにいっぱいありますので、ここでは省略します。(例:https://techacademy.jp/magazine/17430)
よく忘れてしまう基礎コードの備忘録
pythonコーディングはインデントが重要です。半角2又は半角4のインデントで勉強しましょう。
▼目次
httpリクエスト
私はMYSQLにrestシステムを作成しておいて、httpリクエストで繋ぐことが多いです。短期間で開発できて、バグの分割がしやすいです。
まずは「Anaconda Prompt」でlibのインストールをpipで行います。
1 2 3 |
pip install requests |
次に、ソースの中でrequestsのモジュールをimportして、getコマンドでURLを呼び出します。
1 2 3 4 5 6 |
import requests publicUrl = 'https://maedadev.maedakikaku.jp' response_data = requests.get(publicUrl) |
ループ文
loop文の書き方もすぐ忘れてしまいますね。
不正確な記憶でloop文書いて、記述ミスの実行時エラーでよくイラッとしてます(T_T)
1 2 3 4 5 |
for i in range(len(data)): price_data = data[i][‘price’] print(price_data) |
条件文
if文の書き方もすぐ忘れてしまいますね。
1 2 3 4 5 6 7 8 |
if data == "BUY" or data > "SELL": print(’order success’) elif data == "NONE" and data == "ZERO": print(’order none’) else: print(’order error’) |
文字列検索
文字列検索も覚えられないですよね。
文字が存在するかを知りたい場合には 「in」を使います。
1 2 3 4 5 6 7 8 |
list = ["version", "dl", "paiza", "mysql"] print "dl" in list # True print "paiza" in list # False print "dl" not in list # False print "paiza" not in list # True |
文字が存在する番号(インデックス)を知りたい場合には「find」を使います。存在する場所の1文字目の番号を返します。存在しなかった場合には -1 を返します。
1 2 3 4 5 6 |
s = 'get document in org' print(s.find(doc)) # 4 print(s.find(docs)) # -1 |
関数の作成とファイル出力
ログファイルの出力に良く使いますね。でも毎回思い出すのに時間が掛かります(T_T)
1 2 3 4 5 6 7 8 9 10 |
def writeLog(input_string): file_path = ‘log.txt’ f = open(file_path, 'a') f.write(input_string +"\n") f.close() #呼び出し writeLog(“関数を呼び出します”) |
※PDFの出力は例を参考にしてください。
(例:https://gammasoft.jp/blog/pdf-japanese-font-by-python/)
まとめ
私はphpを扱うことが多いので、python備忘録としてブログに纏めていくのは便利ですね。
次は、機械学習プログラムをテストに使うシステムを開発する機会がありましたので、そちらを紹介していきたいと思います。
さて、最後にドキュメント関係のお知らせ
公式サイト(英語):https://www.python.org/
ライセンス(英語):https://docs.python.org/3/license.html
Python チュートリアル:https://docs.python.jp/3/tutorial/