I'm using PyCharm 5.04 and Python 3.4 as interpreter.
I can't use input() function in my code and simply run it (Shift+F10), because PyCharm does not give me a chance to enter my input. Here is the code:
x=''
while x!='stop':
x=input('enter x')
print(x)
print(x)
If I run it, I'll see:
enter x
enter x
enter x
.....
However, if I highlight the code, click right mouse button and chose in context menu 'execute selection in console', everything will work fine. Also, I can add a string 'from sys import argv' at the beginning of my cod, execute it in terminal by typing 'python name_of_script.py' and everything will be working fine to (just in case, I have ubuntu 15.10).
Is something wrong with my PyCharm settings? What should I do to be able to execute code by simple running it (with Shift+F10, as I get used)?
I don't have problems with any other code if it does not have input().
Any help would be appreciated.
Your code seems fine. I suspect that what you're seeing is caused by a Run/Debug configuration issue, which can be the source of all sorts of unexpected behaviors.
Here is what I recommend you do to identify what is wrong:
Run the code with CTRL-Shift-F10 to make sure you're running the current file, and not some other file in your project. If this fixes the issue, you can simply select which file you want Shift-F10 to run by selecting it in the drop down menu at the top right of the screen, near the "play" button
Copy your code to a brand new project, and run it from there. If this fixes the issue, it means your code is fine and that the issue is most likely a Run/Debug configuration issue.
If you confirmed that your code is fine with the step above but can't start from scratch, you can edit the Run/Debug configuration by selecting "Edit" in the drop down menu at the top right of the screen, near the "play" button.
I'm posting this answer for a subtle variation of this issue that I encountered, where the Python console would not let me enter my input but unlike in your case, would not move on with the loop.
I solved the problem by clicking on "Edit the configurations" on the toolbar (run/debug configurations) and disabling the option "Emulate terminal in output console".
Hopefully those having the same issue will stumble upon this thread (as I did).
EDIT: In images:
I haven't tried that solution with a remote interpreter.
input_string = ""
stop_code = 'stop'
try:
while input_string != stop_code:
input_string = input('Enter a value: \n')
print input_string
except Exception as e:
print e
Hope this is What you needed this works for me fine...