組み込み関数

【Python】組み込み関数:int関数の使い方

嫁ちゃん
嫁ちゃん

文字列の数字を数値(整数)として扱いたいんですけど。

わたし
わたし

組み込み関数の「int()」を使うと数値(整数)に変換できるよ。

はじめに

文字列の数字を整数値に変換します。

用法

classint(xbase=10)

x が数値でない、あるいは base が与えられた場合、 x は文字列、 bytes インスタンス、 bytearray インスタンスのいずれかで、基数 base の 整数リテラル で表されたものでなければなりません。 オプションで、リテラルの前に + あるいは - を (中間のスペースなしで) 付けることができます。 また、リテラルは余白で囲むことができます。 基数 n のリテラルは、 0 から n-1 の数字に値 10-35 を持つ a から z (または A から Z) を加えたもので構成されます。 デフォルトの base は 10 です。 許される値は 0 と 2–36 です。 基数 2, 8, 16 のリテラルは、別の記法としてコード中の整数リテラルのように 0b/0B0o/0O0x/0X を前に付けることができます。 基数 0 はコードリテラルとして厳密に解釈することを意味します。 その結果、実際の基数は 2, 8, 10, 16 のどれかになります。 したがって int('010', 0) は有効ではありませんが、 int('010') や int('010', 8) は有効です。

組み込み関数 — Python 3.8.2 ドキュメント より引用

python
val ='10' # 型を確認 print(type(val)) # 値を確認 print(int(val)) # 型を確認 print(type(int(val)))
実行結果
<class 'str'> 10 <class 'int'>

引数にプラス(+)やマイナス(ー)をつけることも可能です。

16進数の文字列の場合

python
val = '0xFF' print( int(val, 16) )

ここでは、16進数の文字列を扱うため引数 base に 16 を指定しています。16進数の文字列の数値が返されます。

実行結果
255

ValueError

python
val = 'a10' try: print(int(val)) except ValueError: print(val, 'は整数ではありません。')

整数に変換できない引数を指定すると ValueError となります。

実行結果
a10 は整数ではありません。

おわりに

嫁ちゃん
嫁ちゃん

引数 base に、2、8、16 の指定をするとそれぞれ、2進数、8進数、16進数として扱われるのですね。

わたし
わたし

そうだね。

引数 base のデフォルトは10進数なので、その場合は引数に10を指定しなくていいよ。

この記事がお役に立てましたら幸いです。
人気ブログランキングに参加しております。
よろしければクリックしていただけると嬉しいです。
にほんブログ村 IT技術ブログ Pythonへ
※本サイトに掲載する情報には充分に注意を払っておりますが、その内容について保証するものではありません。
※本サイトの使用ならびに閲覧によって生じたいかなる損害にも責任を負いかねます。

コメント

タイトルとURLをコピーしました