I've seen other IDEs have the option to right click and reinitialize the environment. Does anyone know if this is possible in PyCharm, and if so, how it's done?
There is a little reset button (small square with a curved green arrow can be seen above) on the top left of the console that says "Rerun" as the tool tip; this seems to reset the console.
If you can't see the button, the Toolbar might be hidden. To get the Toolbar you need to right click on the "Python Console" tab, and click on "Show Toolbar"
The other answer is correct, I'm adding a new answer on how to create a shortcut for re-running the console. By default, it doesn't have any shortcut, but you can add it by mapping it in Keymap.
Open Preferences (in Mac: Cmd+,) and search for "rerun"
Add the keyboard shortcut for Rerun by double-clicking the "Rerun" line. As you can see from the image below, I assign Cmd+Shift+O for it.
Now you can rerun the console by using the shortcut and don't have to use your mouse anymore.
Please note that this button does not reset all the variables. But then you can enter in the command prompt: reset.
I had tried "rerun" and found that it didn't reload the new environment.
I suggest that "new console" button could help you to reload the environment that it had installed the new packages.
Related
I am pretty new to all this so bare with me, I am confused on what is going on with my setup to debug my python code. I have the most current updates for vscode, and the latest python 3 (3.8.5 64-bit). However when I try to start a debug, I get an time out error along with "Command 'cmd' not found, but there are 16 similar ones." Any ideas on how to fix this?
Try to reset your default terminal with the following steps:
press Ctrl+Shift+` to open a new terminal;
click the drop-down menu and choose Select Default Shell:
select Command Prompt:
Then reload window to make the setting work. You can try this to see if the problem goes away.
I've recently switched to VSCode, and am wondering if there's a way to make the Python Interactive Window from the Jupyter support in VSCode work like the console in Spyder where I just have to select code and press ctrl+enter to send it, without having to create cells everytime.
For now I'm resigned to work with the Terminal until my code is clean and then create a cell when I have reusable code, and would like to just work directly with the PIW.
You can always change the default console setting by:
Opening the Command Palette (⇧⌘P)
Typing "Preferences:Open Settings (JSON)
Edit this line:
"python.dataScience.sendSelectionToInteractiveWindow": false
You should be able to do this with the latest python extension. The select the code you want to execute and press shift-enter. Is that not working?
For me (now) interactive mode runs after setting "jupyter.sendSelectionToInteractiveWindow": true
#FranciscoRZ. You should have seen a popup option for this, but if it didn't come up for you it can just be manually set in VSCode options. Just change this guy here:
Python->Data Science: Send Selection To Interactive Window
That should get you what you are looking for.
OP's Note: Accepting this answer because it will be the right anwser starting with the February release of VS Code Python
If you have the notebook saved as a python percentage script (which is more git friendly)
each "cell" will be delimited by # %% and the default run command is "Shift+Ctrl".
Later once you are working in the interactive window, If you want a particular cell you wrote on the fly to be in you script, there is one button which says "Paste code into file" right next to the recently executed cell in the interactive window.
And in case you are using the notebook for the sake of being able to later export it to html or pdf, once executed in the interactive window, there is an export button as well.
Right-clicking is not working to set breakpoints, no matter how many users say so. Did they remove or change the feature?
You need to press the debugger option in the Python Shell. Go to the Debug dropdown and press Debugger. Check this answer for more info.
In PyCharm 2018.2.5 (Community Edition), I have bound a keyboard shortcut to "Run File in Console". This launches opens the console and runs the file, but does not focus the console for input and anything I type goes into my code. (Sometimes when I use the switcher to focus the Python console it will try to search console variables when I type.)
Is there a way to automatically focus the Python console for input when it is launched?
No for PyCharm there is no way to automatically focus the Python console for input when it is launched.
In Notepad ++ i can do the following.
Enter my code
press shift+a to execute a macro which saves the file and execute it with Python 2.7 (or 3). I also made this macro a menu item.
When the console runs and the script asks for input you are already in focus and can directly put in our entry without having to click and highlight the window or so as it is necessary in PyCharm.
So the step between writing the code and executing it to see what it does exactly one hotkey. Its not one hotkey and a mouse click or what ever no.... its exactly one press of a button. This makes learning very effective because there are no detours.
I looked long in PyCHarm but i could not find this functionality or a workaround. So the answer to your question is "With PyCharm this is not possible."
Here is how to do it in Notepad ++.
Download Notepad ++
In N++ install the NppExec Plugin.
Create the "save and run in python" macro: In NppExec create a script as shown here:
NPP_CONSOLE 0
npp_save
npp_run cmd /K C:\Python27\python.exe "$(FULL_CURRENT_PATH)"
Save your macro script as say "Save and run in Python Selfmade"
In the hotykeys menu assign your macro to a new hotkey.
In the Npp_Exec menu click on Advanced Options and create a menu entry for your macro. To do this select the script you created under "Associated Script" and then click on "Add/Modify"
Another editor that offers you this quick and direct run functionality is "Atom" with its many plugins.
The shortcut to switch between the code and console is Alt+4; by clicking on the console or using this shortcut, future consoles you open will be selected by the input.
Yes it IS possible
in the run console change the view mode to Window (click the cog)
add the following lines to the benning of your source code
import pygetwindow as gw
win = gw.getWindowsWithTitle('Run')[0]
win.activate()
now it will automatically give focus to the run window... see my youtube demo.. https://www.youtube.com/watch?v=MhmltlUjU3k
i have just posted something related to this. It is needed to distinguish between "Python console" and "python or debug console" within the keymap options. The first one focus at the console but without automatically move caret to it, the later does it.
See more detailes in this answer.
It's very easy! Just make macros with two actions:
1 - Run command,
2 - Activate run tool window. And with keymap in settings create a shortcut. For example, I do this with shift + f10 .
I am sure I am using incorrect terminology, but hopefully you can grasp my meaning. I am working with Spyder python 2.7, and I have somehow lost my "output" window. I attached a screen shot. Formerly, there was a window, that, after having run my code, gave me the results of my code. How do I get this window back? I went to the view options, but had no such luck.
(Spyder dev here) You have two options to make your console back (that's the right name of what you called as output window :)
Go to the View Menu and there from to Windows and toolbars and select either Console or IPython console.
If this doesn't solve your problem, just open a Windows terminal (i.e. cmd.exe from the Start > Run Window menu) and in it run this comnmand:
spyder --reset
and then restart Spyder again. That should solve your problem for sure.