' P '

whatever I will forget

Entries from 2019-06-01 to 1 month

Python 例外処理

プログラム実行中にエラーが出てしまうと、その場で処理が停止してしまう。 処理をとりあえず?正常に終了させるために、 異常処理を書いておく必要がある場合があります。 また、Pythonデフォルトのエラーメッセージを表示させるのではなく、 自分好みのメ…

Python クラス

Pythonのクラスで特徴的なのは初期化インスタンスくらいですかね〜。 def __init__() :メソッドがC++でいうようなコンストラクタになります。 アンダーバー2個続けないとダメです。 オーバーロードコンストラクタみたいに、 __init__()メソッドで引数の違う…

Python ファイル入出力

データサイエンスとかやるなら、これ必須やと思います。 整形するときにcsvとか開くやん、、 open/closeとメソッドはありますが、基本with openしておけば間違いないです。 上記だと、ブロックから抜けたら勝手にcloseしてくれるからです。 #ファイル書き込…

Python モジュールのimport

C言語でいうところの#includeですね。 pythonはheaderとかにせず、importして使う感じっす。 さっきの関数のコードを使い回し。 calc_main.py import calc_tax as c total = c.calc_tax(percent=10, reduction=1, price=1000) print (total) total = c.calc_…

Python 関数

関数 pythonの関数ですね〜 重要だと思ったのは、Pythonは関数のオーバーロードができないこと そのため、関数の定義側に、引数のデフォルト値を定義しておく ことで、引数の数が変化しても大丈夫。 あと、何故かデフォルト値を定義してしまったら、その後の…

Python if/while/for

個人的にPythonのfor文はわかりやすいような、クセがあるような感じがします。 if / elif / else else if は elifと書きます まあ、それだけですね、サンプルコードも省略しよっと(すみません) あえていうなら、 if 条件式: #処理 elif 条件式: #処理 else…

Python ディクショナリー

ディクショナリー キーとバリューを同時に格納することができる配列構造のオブジェクトやで〜 ディクショナリーは、{} で囲んで初期化します。 dict = {"key1" : "aaa", "key2" : "bbb", "key3": "ccc"} #参照 print(dict["key1"]) #aaa #要素の追加 dict["k…

Python タプル

タプル 簡単にいうとCでいうようなconstのリスト リスト内の値を外部から変えることはできない。 絶対に固定値をなんども使うことがあるのならば、リストを毎回作成するよりパフォーマンスが良い。 タプル作成の場合は、()で値を代入すること。 smp_tuple = …

Python リスト

リスト pythonはマイナスのインデックスも持てます。 [0] [1] [2] [3] 1 2 3 4 [-4][-3][-2][-1] 1,2,3,4が要素ね リストの操作 代表的なメソッドをメモ lst = [1,2,3,4] #参照 print(lst[1]) #2 #追加 lst.append(100) print (lst) #[1,2,3,4,100] #除去 ls…

Python 構文規則

ちょっと浮気してPythonです。 気になった部分だけメモします。 複数の行を1つの文として連結する ¥を使用すれば複数行にまたがったコードも論理的には一行となります。 また、{}, [], ()など括弧で囲まれた場合は複数行になったも問題なしです。 a = 1+2+ …

C++ Overloading Operator

C++

おいおい、ちょっと待って!オペレーターまでOverloadできんの!? 全く知りませんでした。 頻繁にそういう自作のオペレーターで色々するのなら、役に立つのかな、、、 まあ、つべこべ考えずにまずはコード。 クラスのMember内でオーバーロード sample.h cla…

C++ Overloading assignment operator

C++

C++はアサインメントのオペレータでさえ、オーバーロードできるんですね。。。 これ使う時がどんなときなのかというと、Shallow copyではなく、Deep copyが必要なとき。 (クラスのメンバにRawポインタがいる場合。デフォルトだとshallow copyになってしまう…