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

  • URLをコピーしました!
嫁ちゃん
嫁ちゃん

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

わたし
わたし

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

目次

はじめに

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

用法

class int(x, base=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 ドキュメント より引用

val  = '10'
# 型を確認
print(type(val))
# 値を確認
print(int(val))
# 型を確認
print(type(int(val)))
<class 'str'>
10
<class 'int'>

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

16進数の文字列の場合

val = '0xFF'

print( int(val, 16) )

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

255

ValueError

val = 'a10'

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

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

a10 は整数ではありません。

おわりに

嫁ちゃん
嫁ちゃん

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

わたし
わたし

そうだね。

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

[A8_TechAcademy065]

[Footer]

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次