質問: input("2行目入力してください: ") print("2行目: " + line2) ``` 標準入力から次の2行をいっぺんに入力した場合、 ``` 1111 2222 ``` 『PyCharmでの通常の実行』をすると、変数 line1 の中にいっぺんに「line1='1111\n2222'」と読み込まれてしまうのです(改行コードで止まりません)。何か設定などを変えて、intput関数が正常に機能するような対処方法などがありましたら教えてください。(以下はPythonコンソールの出力です) ``` 1行目入力してください: >? 1111 ... 2222 1行目: 1111 2222 2行目入力してください: >? 2行目: ``` なお、同じPyCharmの環境でデバッグモード(緑の虫のボタン)では、input関数は改行コード「\n」までの1行しか読み込まないというように正常に動作をします(下は正常に動作したデバッガーのコンソール画面出力)。 ``` Connected to pydev debugger (build 192.5728.105) 1行目入力してください: 1行目: 1111 2行目入力してください: 2行目: 2222 import sys; print('Python %s on %s' % (sys.version, sys.platform)) Python 3.7.3 (default, Mar 27 2019, 17:13:21) [MSC v.1915 64 bit (AMD64)] on win32 ``` 公式のサポートには、ライセンス契約を結んでいないと質問できないと言われたので、ここで質問させていただきました。よろしくお願いします。
回答: 回答ではなく別環境での検証結果です。 下記の環境ではデバッグモードと通常実行で同一の動作をしました。 > > PyCharm 2019.2 (Community Edition) > > Runtime version: 11.0.3+12-b304.10 amd64 > > VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o > > > Windows 10 Home 64bit 1803 > > Virtualenv > > Python 3.6.0 > > > ※`\n`は改行文字に読み替えてください。 ### `1111\n2222\n`をコピペした時の挙動 ``` 1行目入力してください: 1111 2222 1行目: 1111 2行目入力してください: 2行目: 2222 Process finished with exit code 0 ``` ### `1111\n2222`をコピペした時の挙動(末尾の改行なし) ``` 1行目入力してください: 1111 22221行目: 1111 2行目入力してください: ``` ### その後Enterキーを押した後の表示 ``` 1行目入力してください: 1111 22221行目: 1111 2行目入力してください: 2行目: 2222 Process finished with exit code 0 ``` もしかしたらOS, 仮想環境, PyCharmバージョンの変更で問題が解消するかもしれません。