Merge branch 'master' into standard-american-english

This commit is contained in:
Marc Poulin
2018-12-20 15:03:09 -07:00
committed by GitHub
17 changed files with 130 additions and 123 deletions
+36 -36
View File
@@ -7,7 +7,7 @@ Your Development Environment
Text Editors
::::::::::::
Just about anything that can edit plain text will work for writing Python code,
Just about anything that can edit plain text will work for writing Python code;
however, using a more powerful editor may make your life a bit easier.
@@ -97,7 +97,7 @@ using ``<Tab>`` key or any other customized keys.
Emacs
-----
Emacs is another powerful text editor. It is fully programmable (lisp), but
Emacs is another powerful text editor. It is fully programmable (Lisp), but
it can be some work to wire up correctly. A good start if you're already an
Emacs user is `Python Programming in Emacs`_ at EmacsWiki.
@@ -109,7 +109,7 @@ TextMate
--------
`TextMate <http://macromates.com/>`_ brings Apple's approach to operating
systems into the world of text editors. By bridging UNIX underpinnings and
systems into the world of text editors. By bridging Unix underpinnings and
GUI, TextMate cherry-picks the best of both worlds to the benefit of expert
scripters and novice users alike.
@@ -117,8 +117,8 @@ Sublime Text
------------
`Sublime Text <http://www.sublimetext.com/>`_ is a sophisticated text
editor for code, markup and prose. You'll love the slick user interface,
extraordinary features and amazing performance.
editor for code, markup, and prose. You'll love the slick user interface,
extraordinary features, and amazing performance.
Sublime Text has excellent support for editing Python code and uses Python for
its plugin API. It also has a diverse variety of plugins,
@@ -133,7 +133,7 @@ Atom
editors.
Atom is web native (HTML, CSS, JS), focusing on modular design and easy plugin
development. It comes with native package control and plethora of packages.
development. It comes with native package control and a plethora of packages.
Recommended for Python development is
`Linter <https://github.com/AtomLinter/Linter>`_ combined with
`linter-flake8 <https://github.com/AtomLinter/linter-flake8>`_.
@@ -156,7 +156,7 @@ Python (on Visual Studio Code)
------------------------------
`Python for Visual Studio <https://marketplace.visualstudio.com/items?itemName=ms-python.python>`_ is an extension for the `Visual Studio Code IDE <https://code.visualstudio.com>`_.
This is a free, light weight, open source IDE, with support for Mac, Windows, and Linux.
This is a free, lightweight, open source IDE, with support for Mac, Windows, and Linux.
Built using open source technologies such as Node.js and Python, with compelling features such as Intellisense (autocompletion), local and remote debugging, linting, and the like.
MIT licensed.
@@ -192,7 +192,7 @@ toward working with scientific Python libraries (namely
`pylint <http://www.logilab.org/857>`_ and
`rope <https://github.com/python-rope/rope>`_.
Spyder is open-source (free), offers code completion, syntax highlighting,
Spyder is open source (free), offers code completion, syntax highlighting,
a class and function browser, and object inspection.
@@ -200,7 +200,7 @@ WingIDE
-------
`WingIDE <http://wingware.com/>`_ is a Python specific IDE. It runs on Linux,
Windows and Mac (as an X11 application, which frustrates some Mac users).
Windows, and Mac (as an X11 application, which frustrates some Mac users).
WingIDE offers code completion, syntax highlighting, source browser, graphical
debugger and support for version control systems.
@@ -211,11 +211,11 @@ NINJA-IDE
`NINJA-IDE <http://www.ninja-ide.org/>`_ (from the recursive acronym: "Ninja-IDE
Is Not Just Another IDE") is a cross-platform IDE, specially designed to build
Python applications, and runs on Linux/X11, Mac OS X and Windows desktop
Python applications, and runs on Linux/X11, Mac OS X, and Windows desktop
operating systems. Installers for these platforms can be downloaded from the
website.
NINJA-IDE is open-source software (GPLv3 licence) and is developed
NINJA-IDE is open source software (GPLv3 licence) and is developed
in Python and Qt. The source files can be downloaded from
`GitHub <https://github.com/ninja-ide>`_.
@@ -224,11 +224,11 @@ Eric (The Eric Python IDE)
--------------------------
`Eric <http://eric-ide.python-projects.org/>`_ is a full featured Python IDE
offering sourcecode autocompletion, syntax highlighting, support for version
control systems, python 3 support, integrated web browser, python shell,
integrated debugger and a flexible plug-in system. Written in python, it is
based on the Qt gui toolkit, integrating the Scintilla editor control. Eric
is an open-source software project (GPLv3 licence) with more than ten years of
offering source code autocompletion, syntax highlighting, support for version
control systems, Python 3 support, integrated web browser, python shell,
integrated debugger, and a flexible plug-in system. Written in Python, it is
based on the Qt GUI toolkit, integrating the Scintilla editor control. Eric
is an open source software project (GPLv3 licence) with more than ten years of
active development.
@@ -253,8 +253,8 @@ of the Python interpreter to be installed at the same time. This solves the
problem of having different projects requiring different versions of Python.
For example, it becomes very easy to install Python 2.7 for compatibility in
one project, while still using Python 3.4 as the default interpreter.
pyenv isn't just limited to the CPython versions - it will also install PyPy,
anaconda, miniconda, stackless, jython, and ironpython interpreters.
pyenv isn't just limited to the CPython versions it will also install PyPy,
Anaconda, miniconda, stackless, Jython, and IronPython interpreters.
pyenv works by filling a ``shims`` directory with fake versions of the Python
interpreter (plus other tools like ``pip`` and ``2to3``). When the system
@@ -276,7 +276,7 @@ IDLE
----
:ref:`IDLE <python:idle>` is an integrated development environment that is
part of Python standard library. It is completely written in Python and uses
part of the Python standard distribution. It is completely written in Python and uses
the Tkinter GUI toolkit. Though IDLE is not suited for full-blown development
using Python, it is quite helpful to try out small Python snippets and
experiment with different features in Python.
@@ -294,18 +294,18 @@ IPython
`IPython <http://ipython.org/>`_ provides a rich toolkit to help you make the
most out of using Python interactively. Its main components are:
* Powerful Python shells (terminal- and Qt-based).
* Powerful Python shells (terminal- and Qt-based)
* A web-based notebook with the same core features but support for rich media,
text, code, mathematical expressions and inline plots.
* Support for interactive data visualization and use of GUI toolkits.
* Flexible, embeddable interpreters to load into your own projects.
* Tools for high level and interactive parallel computing.
text, code, mathematical expressions and inline plots
* Support for interactive data visualization and use of GUI toolkits
* Flexible, embeddable interpreters to load into your own projects
* Tools for high level and interactive parallel computing
.. code-block:: console
$ pip install ipython
To download and install IPython with all it's optional dependencies for the notebook, qtconsole, tests, and other functionalities
To download and install IPython with all its optional dependencies for the notebook, qtconsole, tests, and other functionalities:
.. code-block:: console
@@ -318,14 +318,14 @@ BPython
Python interpreter for Unix-like operating systems. It has the following
features:
* In-line syntax highlighting.
* Readline-like autocomplete with suggestions displayed as you type.
* Expected parameter list for any Python function.
* "Rewind" function to pop the last line of code from memory and re-evaluate.
* Send entered code off to a pastebin.
* Save entered code to a file.
* Auto-indentation.
* Python 3 support.
* In-line syntax highlighting
* Readline-like autocomplete with suggestions displayed as you type
* Expected parameter list for any Python function
* "Rewind" function to pop the last line of code from memory and re-evaluate
* Send entered code off to a pastebin
* Save entered code to a file
* Auto-indentation
* Python 3 support
.. code-block:: console
@@ -341,12 +341,12 @@ library. It is considered to be an alternative to BPython_. Features include:
* Syntax highlighting
* Autocompletion
* Multiline editing
* Emacs and VIM Mode
* Emacs and Vim Modes
* Embedding REPL inside of your code
* Syntax Validation
* Syntax validation
* Tab pages
* Support for integrating with IPython_'s shell, by installing IPython
``pip install ipython`` and running ``ptipython``.
(``pip install ipython``) and running ``ptipython``.
.. code-block:: console
+3 -3
View File
@@ -1,6 +1,6 @@
.. _pip-virtualenv:
Further Configuration of Pip and Virtualenv
Further Configuration of pip and Virtualenv
===========================================
.. image:: /_static/photos/34018732105_f0e6758859_k_d.jpg
@@ -105,7 +105,7 @@ need any configuration.
When using older versions, you can configure pip in such a way that it tries to
reuse already installed packages, too.
On UNIX systems, you can add the following line to your :file:`.bashrc` or
On Unix systems, you can add the following line to your :file:`.bashrc` or
:file:`.bash_profile` file.
.. code-block:: console
@@ -124,7 +124,7 @@ add the following line to your :file:`pip.ini` file under ``[global]`` settings:
download-cache = %HOME%\pip\cache
Similarly, on UNIX systems you should simply add the following line to your
Similarly, on Unix systems you should simply add the following line to your
:file:`pip.conf` file under ``[global]`` settings:
.. code-block:: console
+28 -14
View File
@@ -212,7 +212,7 @@ Install virtualenv via pip:
$ pip install virtualenv
Test your installation
Test your installation:
.. code-block:: console
@@ -226,23 +226,26 @@ Basic Usage
.. code-block:: console
$ cd my_project_folder
$ virtualenv my_project
$ virtualenv venv
``virtualenv my_project`` will create a folder in the current directory which will
``virtualenv venv`` will create a folder in the current directory which will
contain the Python executable files, and a copy of the ``pip`` library which you
can use to install other packages. The name of the virtual environment (in this
case, it was ``my_project``) can be anything; omitting the name will place the files
case, it was ``venv``) can be anything; omitting the name will place the files
in the current directory instead.
.. note::
'venv' is the general convention used globally. As it is readily available in ignore files (eg: .gitignore')
This creates a copy of Python in whichever directory you ran the command in,
placing it in a folder named :file:`my_project`.
placing it in a folder named :file:`venv`.
You can also use the Python interpreter of your choice (like
``python2.7``).
.. code-block:: console
$ virtualenv -p /usr/bin/python2.7 my_project
$ virtualenv -p /usr/bin/python2.7 venv
or change the interpreter globally with an env variable in ``~/.bashrc``:
@@ -254,12 +257,20 @@ or change the interpreter globally with an env variable in ``~/.bashrc``:
.. code-block:: console
$ source my_project/bin/activate
$ source venv/bin/activate
The name of the current virtual environment will now appear on the left of
the prompt (e.g. ``(my_project)Your-Computer:your_project UserName$)`` to let you know
the prompt (e.g. ``(venv)Your-Computer:your_project UserName$)`` to let you know
that it's active. From now on, any package that you install using pip will be
placed in the ``my_project`` folder, isolated from the global Python installation.
placed in the ``venv`` folder, isolated from the global Python installation.
For Windows, same command which is mentioned in step 1 can be used for creation of virtual environment. But, to activate, we use the following command.
Assuming that you are in project directory:
.. code-block:: powershell
PS C:\Users\suryav> \venv\Scripts\activate
Install packages as usual, for example:
@@ -281,9 +292,12 @@ To delete a virtual environment, just delete its folder. (In this case,
it would be ``rm -rf my_project``.)
After a while, though, you might end up with a lot of virtual environments
littered across your system, and its possible you'll forget their names or
littered across your system, and it's possible you'll forget their names or
where they were placed.
.. note::
Python has included venv module from version 3.3. For more details: `venv <https://docs.python.org/3/library/venv.html>`_.
Other Notes
~~~~~~~~~~~
@@ -293,7 +307,7 @@ for keeping the package list clean in case it needs to be accessed later.
[This is the default behavior for ``virtualenv`` 1.7 and later.]
In order to keep your environment consistent, it's a good idea to "freeze"
the current state of the environment packages. To do this, run
the current state of the environment packages. To do this, run:
.. code-block:: console
@@ -302,7 +316,7 @@ the current state of the environment packages. To do this, run
This will create a :file:`requirements.txt` file, which contains a simple
list of all the packages in the current environment, and their respective
versions. You can see the list of installed packages without the requirements
format using "pip list". Later it will be easier for a different developer
format using ``pip list``. Later it will be easier for a different developer
(or you, if you need to re-create the environment) to install the same packages
using the same versions:
@@ -343,7 +357,7 @@ To install (make sure **virtualenv** is already installed):
$ pip install virtualenvwrapper-win
In Windows, the default path for WORKON_HOME is %USERPROFILE%\Envs
In Windows, the default path for WORKON_HOME is %USERPROFILE%\\Envs
Basic Usage
~~~~~~~~~~~
@@ -363,7 +377,7 @@ This creates the :file:`my_project` folder inside :file:`~/Envs`.
$ workon my_project
Alternatively, you can make a project, which creates the virtual environment,
and also a project directory inside ``$WORKON_HOME``, which is ``cd`` -ed into
and also a project directory inside ``$WORKON_HOME``, which is ``cd``-ed into
when you ``workon myproject``.
.. code-block:: console