MyEnigma

とある自律移動システムエンジニアのブログです。#Robotics #Programing #C++ #Python #MATLAB #Vim #Mathematics #Book #Movie #Traveling #Mac #iPhone

独学Python 6: Pythonにおけるオブジェクト,ビルトインオブジェクト,数値リテラル,Pythonにおける変数

以下は,プログラミング言語Pythonの書籍として非常に有名な,

『初めてのPython』

を読みながら,Pythonを勉強した時の個人的なメモです.



関連記事:
独学Python 1: 名前の由来, メリット,デメリット,ユーザ - MY ENIGMA
独学Python 2: できること, 技術的な長所, 多言語との連携, 勉強しやすい, 使い易い - MY ENIGMA
独学Python 3: Python インタープリタ,プログラムの実行,プログラムの実行,Pythonプログラム作成,その時インタープリタはなにをしているのか? - MY ENIGMA
独学Python 4: たくさんのPythonの実行モデル,Pythonプログラムの実行方法,プログラム(モジュール)ファイル, 実際にPythonプログラムファイルを作る. - MY ENIGMA
独学Python 5: Pythonのプログラムと起動,importと.pycファイルの関係,エラーについて,循環オブジェクト - MY ENIGMA


Pythonにおけるオブジェクト

Pythonでは,データがオブジェクトとして扱われる.

これらのオブジェクトは予め用意されているビルトインオブジェクトと,

PythonやCのツールでプログラマが自ら作成するオブジェクトに分けることができる.


Pythonプログラムの構造

プログラムはモジュールから構成される.

モジュールはステートメントから構成される.

ステートメントは式(expression)から構成される.

式により,オブジェクトが作成・処理される.

ビルトインオブジェクト

CやC++ではたくさんのオブジェクトを作らなくてはならないが,

Pythonでは元々ある多くのビルトインオブジェクトを使うことができる.


ビルトインオブジェクトを使うべき理由

簡単にプログラムを作ることができる.

あとでそれを元に独自のオブジェクトを作ることができる

カスタムオブジェクトよりパフォーマンスがいい


数値リテラル

PythonはCとは異なり,

複素数や無限精度の数値をサポートしている.

8進成数は先頭に0, 16進成数は先頭に0xをつける.

複素数では虚数部の最後にjかJをつける.

matrixなどのデータ型や,

高度な演算処理には,NumPy (Numeric Python)が使える.

NumPyはNASAなどでも最近使われ始めた.

x//yでは小数点が切り捨てられる

40+3.14など,複数の型を混在させることができる.

演算子のオーバーロード(ポリモーフィズム)も可能.

(ポリモーフィズム:処理対象となるオブジェクトの型によって機能がかわる.)


Pythonにおける変数

変数は,初めに値が代入された時点で作成される.

変数を使って式を書くと,演算にはその変数に代入された値が使用される.

値が代入されていない変数を式で使用することはできない.

値を再入せず,変数の名前だけを宣言することはできない.