0

すべてのコードが正しいと確信しています。エラーはインストールファイルの間違いである可能性があると思います。

a,b = input('Enter in format number^power: ').split('^')
a = int (a)
b = int (b)
result = a**b
print (result)
input()

IDLE で実行すると、完全に動作します。ただし、ターミナルでスクリプトを実行すると、次のエラーが表示されます。

Traceback (most recent call last):
File "C:\Users\xxx\Desktop\calculator.py", line 1, in <module>
a,b = input('Enter a range: ').split('^')
AttributeError: 'int' object has no attribute 'split'

私は何が間違っているのでしょうか?

4

2 に答える 2

3

あなたはpython 2でそれを実行しています。

Python 2 では、input返す前に入力を評価するため、プロンプトの内容を実行すると int が返されます。

于 2013-03-09T23:01:24.120 に答える
0

./scriptname.pyIDLE では正しく動作するがターミナルで失敗する場合は、python ファイルの標準ハンドラが Python 3 ではなく Python 2 に設定されている可能性が非常に高いです。スクリプトの実行には Python パーサーが使用されます。

Python 3 を使用するには、ファイルの先頭に次のシェバン行を追加します。

#!/usr/bin/env python3

これはPEP-397に従って Windows でもサポートされていることに注意してください。

于 2013-03-09T23:08:21.910 に答える