したがって、私のコードでは、通常、文字列をintに変換するためにこれを行いますが、少し不格好な方法があるのではないかと思っていました。
myInput = str(myInput)
たぶん、これがどうあるべきか?
文字列をintに変換しようとしている場合、 int
関数を使用することをお勧めします。
pythonコードは次のようになります。
myInput = int(myInput)
この3文字の関数は、必要なことを短時間で行います。実際、Javaのような他の言語では、構文はほぼ2倍の長さです。
Javaの例
int myIntInput = Integer.parseInt(myInput);
たぶん、あなたはmyNumber = myInput.toInt
のようなものを望んでいたのでしょう。ただし、現在のところ、ネイティブに実行することはできません。おもしろいことに、フロートのような文字列から整数部分を抽出する場合は、最初にfloat
に変換し、次にint
に変換する必要があります。または、ValueError: invalid literal for int()
を取得します。したがって、これは堅牢な方法です。
myInput = int(float(myInput))
例えば:
>>> nb="88.8"
>>> int(nb)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: invalid literal for int() with base 10: '88.8'
>>> int(float(nb))
88
ユーザー入力の場合、ユーザーが文字列を入力した可能性があります。したがって、tryを使用して例外をキャッチすることをお勧めします。
UserInput = '88.8'
try:
int(float(UserInput))
except:
UserInput = 0
print(UserInput)