Developing Python On Windows With WSL
Description:
This post describes how I started developing python scripts using vscode on Windows but using WSL under the hood for linux development tasks.
To Resolve:
- Following Microsoft’s Developing in WSL … :
- Install WSL
- Sign into your distro, create a user, run
apt-get update -y && apt-get upgrade -y
- Install vscode on Windows
- Install Remote Development extensions on Windows
- Inside vscode, run
wsl
and thencode .
and it will install a bunch of stuff in your Ubunutu system - Inside vscode (which is in Ubuntu now after previous code . command) run
sudo apt-get install python3-pip
- Create a python script and put shebang at top
#!/usr/bin/python3
and run it. It will say something about installing a linter and since we installed pip it will install it - I chosepylint
andautopep8
- Now add a few more lines and do the
ctrl+shift+f
thing and it should auto format your code
-
Next, in WSL type
vi ~/.bashrc
and add to the bottom of the filecd /mnt/q/google/scripts/python
. This will set it to where everything I do will sync with Google so I can pick up on any computer I have Backup and sync installed.- Also, if you have a settings.json, I would sync it to your WSL machine.
- Note that this file will be highly modified because I didn’t install half the extensions I use in my Windows vscode.
-
A few things I noticed:
-
For a folder rename error:
'/mnt/q/google/scripts/python/z_python/plex-backup' -> '/mnt/q/google/scripts/python/z_python/current' Error: EACCES: permission denied, rename
, I fixed by setting one of my settings.json lines toremote.WSL.fileWatcher.polling to true
-
For no pip:
There is no Pip installer available in the selected environment
, I found the path to the WSL extension and addedpip install --upgrade pip
on the end:/usr/bin/python3 /home/myuser/.vscode-server/extensions/ms-python.python-2020.5.86806/pythonFiles/pyvsc-run-isolated.py pip install --upgrade pip
-
Comments