Python数値型データは、数値を格納するために使用されます。
数値型の変更は許可されていません。つまり、数値型データの値が変更されると、メモリスペースが再割り当てされます。
次の例では、変数が値を割り当てられたときに数値型オブジェクトを作成します
var1 = 1
var2 = 10
delステートメントを使用して、一部の数値オブジェクトへの参照を削除することもできます。
delステートメントの構文は次のとおりです。
del var1[,var2[,var3[....,varN]]]
次に、delステートメントを使用して、単一または複数のオブジェクトへの参照を削除できます。
del var
del var_a, var_b
Pythonは、次の3つの異なる数値型をサポートしています。
整数型(Int)–通常は整数型あるいはINT型と呼ばれ、小数点のない正または負の整数です。 Python3整数型にはサイズ制限がなく、Long型として使用できるため、Python 3にはPython2Long型がありません。
浮動小数点型( float型)–浮動小数点型は整数部分と小数部分で構成されます。浮動小数点型は科学表記で表すこともできます(2.5e2 = 2.5 x 102 = 250)。
複素数型(complex型)–複素数型は、実数と虚数で構成されています。a+ bjまたはcomplex(a,b)で表すことができます。複素数の実数aと虚数bは、どちらも浮動小数点型です。
16進数と8進数を使用して、整数を表すことができます。
>>> number = 0xA0F # 16進数
>>> number
2575
>>> number=0o37 # 8進数
>>> number
31
整数型int | 浮動小数点型float | 複素数型complex |
10 | 0.0 | 3.14j |
100 | 15.20 | 45.j |
-786 | -21.9 | 9.322e-36j |
080 | 32.3e+18 | .876j |
-0490 | -90. | -.6545+0J |
-0x260 | -32.54e100 | 3e+26J |
0x69 | 70.2E-12 | 4.53e-7j |
Pythonは複素数をサポートします。複素数型は、実数と虚数で構成されています。a+ bjまたはcomplex(a,b)で表すことができます。複素数の実数aと虚数bは、どちらも浮動小数点型です。
目次
Python数値型データの変換
場合によっては、組み込み数値型を変換する必要があります。数値型の変換では、数値型を関数名として使用するだけで済みます。
int(x)は、xを整数に変換します。
float(x)は、xを浮動小数点数に変換します。
complex(x)はxを複素数に変換し、実数はx、虚数は0です。
complex(x、y)は、xとyを複素数に変換します。実数はxで、虚数はyです。 xとyは数値式です。
次の例では、浮動小数点変数aを整数に変換します。
>>> a = 1.0
>>> int(a)
1
Python数値計算
Pythonインタープリターは、単純な計算機として使用できます。インタープリターに式を入力すると、式の値が出力されます。
式の構文は単純です:+、-、*、/は、他の言語(PascalやCなど)と同じです。 例えば:
>>> 2 + 2
4
>>> 50 - 5*6
20
>>> (50 - 5*6) / 4
5.0
>>> 8 / 5 # 常に浮動小数点数を返します。
1.6
注意:浮動小数点演算の結果は、端末によって異なる場合があります。
整数除算では、除算/は常に浮動小数点数を返します。整数の結果のみを取得し、小数点数部分を破棄する場合は、演算子//を使用してください。
>>> 17 / 3 # 整数除算は浮動小数点を返します。
5.666666666666667
>>>
>>> 17 // 3 # 整数が除算しては切り捨ての結果を返します。
5
>>> 17 % 3 # %演算子は除算の残りを返します。
2
>>> 5 * 3 + 2
17
注意://取得したものは必ずしも整数型ではなく、分母分子のデータ型に関連しています。
>>> 7//2
3
>>> 7.0//2
3.0
>>> 7//2.0
3.0
>>>
等号=は、変数に値を割り当てるために使用されます。 割り当て後、インタプリタは次のプロンプトを除いて結果を表示しません。
>>> width = 20
>>> height = 5*9
>>> width * height
900
Pythonは**操作を使用してべき乗を実行できます。
>>> 5 ** 2 # 5 の平方
25
>>> 2 ** 7 # 2の7次式
128
変数を使用する前に、変数を「定義」する(つまり、値を割り当てる)必要があります。そうしないと、エラーが発生します。
>>> n # 未定義の変数にアクセスしようとします
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'n' is not defined
異なるタイプの数値を合わせて計算する場合、整数は浮動小数点数に変換されます。
>>> 3 * 3.75 / 1.5
7.5
>>> 7.0 / 2
3.5
インタラクティブモードでは、最後の出力式の結果が変数_に値を割り当てられます。
>>> tax = 12.5 / 100
>>> price = 100.50
>>> price * tax
12.5625
>>> price + _
113.0625
>>> round(_, 2)
113.06
ここで、_変数はユーザーが読み取り専用変数として扱われます。
数学関数
関数 | 返す値(説明) |
abs(x) | abs(-10)が10を返すように、数値の絶対値を返します。 |
ceil(x) | math.ceil(4.1)が5を返すように、数値の上向きの整数を返します。 |
cmp(x, y) | x yが1を返します。 Python 3では使用できなくなりました。代わりに、 (x>y)-(x<y)を使用します。 |
exp(x) | eのx次累乗(ex)を返します。たとえば、math.exp(1)は2.718281828459045を返します。 |
fabs(x) | math.fabs(-10)が10.0を返すように、数値の絶対値を返します。 |
floor(x) | math.floor(4.9)が4を返すように、小数点を切り捨てた整数を返します。 |
log(x) | たとえば、math.log(math.e)は1.0を返し、math.log(100,10)は2.0を返します。 |
log10(x) | math.log10(100)が2.0を返すように、10を底とするxの対数を返します。 |
max(x1, x2,…) | 指定された引数の最大値を返します。引数は列にすることができます。 |
min(x1, x2,…) | 指定された引数の最小値を返します。引数は列にすることができます。 |
modf(x) | xの整数部分と小数部分を返します。2つの部分の数値記号はxと同じであり、整数部分は浮動小数点で表されます。 |
pow(x, y) | x ** yは計算値です。 |
round(x [,n]) | round(X,N) は N 桁に丸めます。 • N > 0: 小数点の “右” を N 桁に丸めます。 • N = 0: 最も近い整数に丸めます。 • N < 0: 小数点の “左” を N 桁に丸めます。 |
sqrt(x) | 数値xの平方根を返します。 |
ランダム数値に関する関数
ランダム数値は、数学、ゲーム、セキュリティなどの分野で使用され、アルゴリズムの効率を向上させ、プログラムのセキュリティを向上させるために、アルゴリズムに組み込まれることがよくあります。
Pythonには、一般的に使用される次のランダム数値関数が含まれています。
関数 | 説明 |
choice(seq) | 数列の要素からランダムに要素を選択します。例えば、random.choice(range(10))は、0から9までの整数をランダムに選択します。 |
randrange ([start,] stop [,step]) | 指定された範囲内で指定された数字からだけ増加するセットからランダムな数値を取得します。数字のデフォルト値は1です。 |
random() | [0,1)の範囲にある次の実数をランダムに生成します。 |
seed([x]) | ランダムなジェネレーターのシードを変更します。 原理を理解していない場合は、シードを具体的に設定する必要はありません。Pythonがシードの選択をサポートします。 |
shuffle(lst) | 数列のすべての要素をランダムに並べ替えます |
uniform(x, y) | [x、y]の範囲にある次の実数をランダムに生成します。 |
三角関数
Pythonには、以下の三角関数が含まれています。
関数 | 説明 |
acos(x) | xのアークコサインをラジアンで返します。 |
asin(x) | xのアークサインをラジアンで返します。 |
atan(x) | xの逆正接をラジアンで返します。 |
atan2(y, x) | 指定されたXおよびY座標値の逆正接を返します。 |
cos(x) | xの余弦をラジアンで返します。 |
hypot(x, y) | ユークリッドノルムsqrt(x * x + y * y)を返します。 |
sin(x) | xラジアンの正弦を返します。 |
tan(x) | xラジアンの正接を返します。 |
degrees(x) | ラジアンをdegrees(math.pi / 2)などの角度に変換すると、90.0を返します。 |
radians(x) | 角度をラジアンに変換します。 |
数学定数
定数 | 説明 |
pi | 数学的定数pi(円周率、一般にπで表される) |
e | 数学的定数e、eは自然対数の底(ネイピア数) |
コメントを残す