Text Editors

    The functional difference between these two editors is small — they both accomplish the same things, effectively. Which one you chose is a matter of personal taste. There are other editors, like vim, Atom, or emacs, which you may chose to use instead. Whatever works best for you is best.


    I personally use and vastly prefer Sublime Text 3 to all other options available. It’s easily my favorite editor. If it didn’t exist though, I’d be using VS Code.

    Note

    There are a few “soft requirements” for a text editor to have, when working professionally (or recreationally), with Python code:

    • Support for “soft tabs”
    • Support for visible whitespace (this is crucial when working with Python files) Nice–to–haves:

    • Built-in linter for showing syntax errors as you type.

    Sublime Text doesn’t support all of these things by itself, but it comes with a great system called Package Control, which allows for easy installation/management of third-party plugins.

      • Sublime’s Package Manager — can be installed via **
      • Anaconda
      • Fantastic “Python IDE” for Sublime Text, which offers code linting, PEP8 support, and auto–completion. Works great with Pipenv (and the launcher). Highly recommended.

    Additionally Useful Plugins

      • Allows you to git push/pull/stage right from Sublime Text.
      • GitGutter
      • Places the current git status of edited lines in your gutter. Very useful.

    subl Launcher

    Once installed, the command–line launcher will allow you to easily open up projects from your terminal (e.g. ). In addition, it also will inform plugins like Anaconda of which Python interpreter to use, based on the currently activated virtual environment.

    To enable this shortcut, if you’re on a Mac, do the following:

    Then, the command will be available to you, always.

    PEP8 Rulers

    Let’s configure Sublime Text to display these rulers. Go into Preferences ➞ Settings, and add the following JSON:

    Now, you’ll see nice vertical lines at 72 and 79 characters, informing you of how long your lines are!

    Microsoft Visual Studio Code (VS Code)

    Text Editors - 图1

    Microsoft VS Code guides you through setting up the Python package, built by Microsoft themselves, the first time you run it.

    VS Code comes built in with git support and a package system that allows you to customize the editor to your liking. It is built upon Electron (just like Github’s Atom editor) and thus works on various platforms.

    Microsoft VS Code Extensions Recommendations

      • Python Extension for Visual Studio Code
      • by MicrosoftLinting, Debugging (multi-threaded, remote), Intellisense, code formatting, refactoring, unit tests, snippets, Data Science (with Jupyter), PySpark and more.
    • vscode-flake8
      • Python Extension Pack
      • Don Jayamanne’s extension pack installs all the useful Python packages for VS Code in one fell swoop.
      • Jupyter
      • Data Science with Jupyter on Visual Studio Code.
      • Django Template
      • Django template language support for Visual Studio Code.
      • Django Snippets
      • Common Django snippets for everyday use.

    Microsoft VS Code Tricks

    • Select a version of Python using Ctrl + Shift + P:
    • Python: Select Interpreter” You can run your code using the integrated terminal. Open it using Ctrl + `.

    Rulers

    PEP8 compliant rulers can be added to VS Code by adding the following lines to your User Settings: