【解決方法】for および while ループ jupyter ノートブック

プログラミングQA


Eric pimpler の本 Programming ArcGIS Pro with Python を使用して演習を行っています。 私は ArcGIS Pro を介して Juypter Notebook を実行しています。インストールされているモジュールは arcpy と os です。
ありがとう。
例:

Python
password = ''
while password != 'password':
    print("What is the password?")
    password = input()
print('Yes, the password is ' + password + '. You may enter.')

パスワードは何ですか?
————————————————– ————————-
TypeError トレースバック (最新の呼び出しが最後)
の [230]:
4 行目: password = input()

TypeError: ‘str’ オブジェクトは呼び出し可能ではありません
————————————————– ————————–< 私が試したこと:

ArcPro を使用して別のノートブックを開こうとし、コードをコピーして貼り付けました。最初は成功しました。 コードをもう一度実行しましたが失敗しました。 コードは、現在のセルを占有するすべてです。

解決策 1

表示されているコードをコピーして貼り付けると、正常に動作します。

しかし …. 1 行追加すると、次のように失敗します。

Python
password = ''
input = ''
while password != 'password':
    print("What is the password?")
    password = input()
print('Yes, the password is ' + password + '. You may enter.')

という変数を宣言したため失敗します input そして、それは呼び出された標準関数の定義を「上書き」します input -そのため、システムは文字列を関数として呼び出そうとしていると想定し、文句を言います。

上記のコードを確認し、という変数があるかどうかを確認します input – もしそうなら、それを変更してください!

解決策 2

Jupyter Notebook を ArcGIS Pro に保存して閉じました。 デスクトップから Jupyter ノートブックを起動し、コードを実行して成功しました。 ArcGIS Pro プロジェクトを再度開き、現在開いている Jupyter ノートブックからコピーしたコードをデスクトップに貼り付けて実行し、成功しました。
今はもっと気分が良くなりました!

OrginalGriff の助けに感謝します!!

コメント

タイトルとURLをコピーしました