LoginSignup
0
0

More than 1 year has passed since last update.

例外が発生しました: TclError bad argument "333333333333333333333333333333333333333333333333333333333

Posted at

謎のエラーに遭遇。

例外が発生しました: TclError
bad argument "33333333333333333333333333333333333333333333333333333333333333333333333

ええええ...
何だこれ...

書いていたコード

十分に再現可能なため、一部だけ書きます。

python
interval = input("インターバル秒数")
interval = 1000*interval

ユーザーにインターバル秒数をinputで書き込ませ、それをミリ秒に変換するものです。
先ほどのエラーはinputにて3を入力した際に生じるエラーでした。2を入れたときは、2222222222222222222222....とエラーが変わっていました。

原因の特定と修正

デバッグしていたら、intervalのデータ型が目に入りました。string型になっていました。int型に修正して正確に動きました。

python
interval = input("インターバル秒数")
interval = 1000*int(interval)

連番の謎

調べてみたところ、文字列に対しても乗算が定義できるようです。
ABC*4なら、ABCABCABCABCになるとのこと。エラーでは1000桁の連番が出力されてしまったようですね。。。

データ型には気を付けよう!

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0