※この翻訳ドキュメントはスクリプトによって出力・同期されています。内容が怪しそうな場合はGitHubにissueを追加したり英語の原文の確認をお願いします。

Int と Number クラス

このページではIntNumberの各クラスについて説明します。

事前に以下のページを確認しておくと読み進める上で役に立つかもしれません:

Int クラス

Intクラスはapyscの整数の型となります。このクラスは以下のコード例のようにコンストラクタに数値の値を受け付けます:

import apysc as ap

ap.Stage()
int_1: ap.Int = ap.Int(10)
assert int_1 == 10
import apysc as ap

ap.Stage()
int_1: ap.Int = ap.Int(10)
int_2: ap.Int = ap.Int(int_1)
import apysc as ap

ap.Stage()
int_1: ap.Int = ap.Int(10)
int_2: ap.Int = ap.Int(int_1)
int_2 += 15
assert int_2 == 25

もしコンストラクタの引数に浮動小数点数を指定した場合にはIntクラスはその値の浮動小数点数を切り捨てます:

import apysc as ap

ap.Stage()
int_1: ap.Int = ap.Int(10.5)
assert int_1 == 10

Number クラス

Numberクラスはapyscの浮動小数点数の型です。このクラスはIntクラスと同様にコンストラクタの引数に数値を受け付けます。

import apysc as ap

ap.Stage()
number_1: ap.Number = ap.Number(10.5)
assert number_1 == 10.5

number_2: ap.Number = ap.Number(number_1)
number_2 += 10.5
assert number_2 == 21

Floatクラスのエイリアスの特記事項

FloatクラスはNumberクラスのエイリアス。です。このエイリアスはNumberクラスと同様に動作します。Python開発者の方はもしかしたらNumberクラスよりもこちらのエイリアスの方が慣れ親しんでいて自然に感じられるかもしれません。一方でJavaScriptなどの開発者の方はFloatよりもNumberの方が自然に思えるかもしれません。

import apysc as ap

ap.Stage()
assert ap.Number == ap.Float
assert ap.Number(10.5) == ap.Float(10.5)

Int と Number クラスの基本的なインターフェイス

IntNumberの各クラスは同じ各インターフェイスを持っています。詳細に関しては以下をご確認ください:

Int クラスのコンストラクタのAPI

特記事項: このAPIドキュメントはドキュメントビルド用のスクリプトによって自動で生成・同期されています。そのためもしかしたらこの節の内容は前節までの内容と重複している場合があります。

[インターフェイスの構造] __init__(self, value: Union[int, float, apysc._type.number_value_mixin.NumberValueMixIn], *, variable_name_suffix: str = '', skip_init_substitution_expression_appending: bool = False) -> None


[インターフェイス概要]

apyscライブラリ上の整数のためのクラスです。


[引数]

  • value: int or float or Int or Number

    • 整数の初期値。もしもfloatNumberの値が指定された場合このクラスは値を整数へと変換します。

  • variable_name_suffix: str, default “”

    • JavaScript上の変数のサフィックスの設定です。この設定はJavaScriptのデバッグ時に役立つことがあります。

  • skip_init_substitution_expression_appending: bool, default False

    • 初期値の代入のコード表現をスキップするかどうかの真偽値です。このオプションはクラス内部の実装で使用されます。


[コードサンプル]

>>> import apysc as ap
>>> _ = ap.Stage()
>>> int_val: ap.Int = ap.Int(10)
>>> int_val
Int(10)

>>> int_val == 10
Boolean(True)

>>> int_val == ap.Int(10)
Boolean(True)

>>> int_val >= 10
Boolean(True)

>>> int_val += 10
>>> int_val
Int(20)

>>> int_val = ap.Int(10.5)
>>> int_val
Int(10)

[関連資料]

Number クラスのコンストラクタのAPI

特記事項: このAPIドキュメントはドキュメントビルド用のスクリプトによって自動で生成・同期されています。そのためもしかしたらこの節の内容は前節までの内容と重複している場合があります。

[インターフェイスの構造] __init__(self, value: Union[int, float, apysc._type.number_value_mixin.NumberValueMixIn], *, variable_name_suffix: str = '', skip_init_substitution_expression_appending: bool = False) -> None


[インターフェイス概要]

apyscライブラリ用の浮動小数点数のクラスです。


[引数]

  • value: int or float or Int or Number

    • 浮動小数点数の初期値。もしもintやIntなどの型の値が指定された場合このクラスは値を浮動小数点数へ変換します。

  • variable_name_suffix: str, default “”

    • JavaScript上の変数のサフィックスの設定です。この設定はJavaScriptのデバッグ時に役立つことがあります。

  • skip_init_substitution_expression_appending: bool, default False

    • 初期値の代入のコード表現をスキップするかどうかの真偽値です。このオプションはクラス内部の実装で使用されます。


[特記事項]

FloatクラスはNumberクラスのエイリアスであり、このエイリアスはNumberクラスと同様に動作します。


[コードサンプル]

>>> import apysc as ap
>>> _ = ap.Stage()
>>> number: ap.Number = ap.Number(10.5)
>>> number
Number(10.5)

>>> number == 10.5
Boolean(True)

>>> number == ap.Number(10.5)
Boolean(True)

>>> number >= 10.5
Boolean(True)

>>> number += 10.3
>>> number
Number(20.8)

[関連資料]

value 属性のAPI

特記事項: このAPIドキュメントはドキュメントビルド用のスクリプトによって自動で生成・同期されています。そのためもしかしたらこの節の内容は前節までの内容と重複している場合があります。

[インターフェイス概要]

現在の数値を取得します。


[返却値]

  • value: int or float

    • 現在の数値。


[コードサンプル]

>>> import apysc as ap
>>> _ = ap.Stage()
>>> int_val: ap.Int = ap.Int(10)
>>> int_val.value
10

>>> int_val.value = 20
>>> int_val.value
20

>>> int_val.value = ap.Int(30)
>>> int_val.value
30

[関連資料]