Home >> Python >> Tutorial on Expressions


Python言語のリテラル・式の評価

■コメント、改行、タブ

☆コメント

#で始まると、そこから行の終わりまでコメント、##の意味は不明。
@で始まる部分は、ドキュメント作成に用いられる。
"""(ダブルクォーテーション3つ)で、複数の行に跨がるテキストを書ける。

☆改行、タブ

一行には、一文しか書けない。
バックスラッシュ\で行を終わらすと次の行に継続を示す。
空行を入れてもOK。
forやif, while, tryなどの制御構文では、その制御に属する文が、タブで右にインデントされていなければならない。

■リテラルと型

☆整数、長桁整数

長桁整数を明示するときは、Lをつける(2.5版まで)。

内部的には、2.6以降は、桁数の固定されない多倍長バイトで表現されているため、 桁数に制限はありません。非常に大きな数も計算できますので、実数の仮数部よりも精度が 高い計算ができます。

☆2進数、8進数、16進数の標記

0o始まり…8進数(2.x版までは、0始まり)
0x始まり…16真数
0b始まり…2真数

☆実数

小数点をつける(30.0→30.とか、0.8→.8でも構いません)。
指数表現

多くのプラットフォーム(Windows, Linux, Mac OS X, Solaris, BSD系のUNIX)では、 実数の内部表現として、IEEE-754規格の倍精度(64bit)の浮動小数点数を用いています。 そのため、仮数部は10進数では、17桁の精度しかありません。 仮数部について、もっと精度を高くして計算したい場合は、整数を利用するのも一つの 方法です。

☆文字列、Unicode文字列

"(ダブルクォーテーション)か、'(シングルクォーテーション)で囲む。
uをクォーテーションの前につける→Unicodeの文字列(2.5版まで、2.6版以降は標準Unicode)
unicode( )関数でunicodeの文字列を特定の文字コード形式にエンコードする。
テキストが特定の文字コード形式で表現されている場合は、decode()関数でUnicode形式の文字列に変更する。
raw文字列
unichr( コード )関数

☆文字列中の特別な表記

raw文字列以外では、バックスラッシュ\(→日本語では円マーク¥として表示される)で、 特別な制御文字を入れることができる。有効に機能するのは次のようなもの。
	
	\\ バックスラッシュ
	\" ダブルクォーテーション
	\' シングルクォーテーション
	\t 水平タブ
	\n 改行
	\uxxxx xxxxの部分は、Unicodeの16進数4桁を示す

	

■型の変換

☆整数から実数へ

float()関数

☆実数から整数へ

int( )関数
long( )関数(2.x版まで)

☆文字列への変換

str( )関数
bin( )関数
oct( )関数
hex( )関数

☆文字列から数値への変換

int( 文字列 )関数
long( 文字列 )関数(2.x版まで)
float( 文字列 )関数

■変数と代入

☆特殊変数

_(アンダーバー):前の結果を保持する

■式と演算子

☆通常の演算子

+演算子
-演算子
*演算子
**演算子 べき乗
/演算子(3.0版からは、整数除算でなくなり、自動的に実数になる)
//演算子(3.0版からは、整数除算を示すfloat)
%演算子 剰余算

☆式の評価

優先度を()で変えられる。
単一の定数(リストや文字列なども)になるまで評価される。

■ターミナルでの入出力

☆ターミナルからの入力

input( )関数→整数や実数を入力できる。文字列の場合は、クォーテーションマークで囲まなければならない。※ただし、環境によって異なる。
raw_input( )関数→文字列を直接入力できる

☆ターミナルへの出力

print( )関数
print文(3.0版以降はなくなる)
print 式, (改行しない標記)→print( 式, end = " " )(3.0版以降)
Python Sequences