1
Help us understand the problem. What are the problem?

posted at

updated at

intへの変換の範囲について

概要

int型変換で遊んでいて気づいたので備忘録。

半角数値の文字列をint()で数値型にできるのは当然だが、
全角数値型の文字も半角数値にしてくれることにちょっと感動した。

やっていたこと

文字列(半角数値)を数値へ
>>> num = "123"
>>> int(num)
123

まあ、当然そうなる。

文字列(全角数値)を数値へ
>>> num = "123"
>>> int(num)
123

おおお、優秀。

文字列(漢字で単位と数値)を数値へ
>>> num3 = "一億"
>>> int(num3)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: invalid literal for int() with base 10: '一億'

期待したけどダメでした。まあ、当然。漢字をほいほいできる訳無し。

文字列(漢字(数字のみ))を数値へ
>>> num4 = "一"
>>> int(num4)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: invalid literal for int() with base 10: '一'

期待したけどダメでした2。まあ、当然。漢字をほいほいできる(ry

文字列(ローマ数字)を数値へ
>>> num5 = "ⅠⅡ"
>>> int(num5)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: invalid literal for int() with base 10: 'ⅠⅡ'

おまけ。

その他

  • こんなどうでもいいコトを記事にすべきか迷った。

~以上~

Register as a new user and use Qiita more conveniently

  1. You can follow users and tags
  2. you can stock useful information
  3. You can make editorial suggestions for articles
What you can do with signing up
1
Help us understand the problem. What are the problem?