mirror of
https://github.com/kennethreitz/python-guide.git
synced 2026-06-05 06:46:17 +00:00
Merge pull request #961 from apjanke/fix-broken-or-redirect-links
Fix redirected and broken links
This commit is contained in:
Vendored
+5
-5
@@ -59,8 +59,8 @@
|
||||
<h3>Useful Links</h3>
|
||||
<ul>
|
||||
<li><a href="https://docs.python-guide.org/">The Guide Website</a></li>
|
||||
<li><a href="http://github.com/realpython/python-guide">The Guide @ GitHub</a></li>
|
||||
<li><a href="http://github.com/realpython/python-guide/issues">Issue Tracker</a></li>
|
||||
<li><a href="https://github.com/realpython/python-guide">The Guide @ GitHub</a></li>
|
||||
<li><a href="https://github.com/realpython/python-guide/issues">Issue Tracker</a></li>
|
||||
<li><a href="https://media.readthedocs.org/pdf/python-guide/latest/python-guide.pdf">The Guide as a PDF</a></li>
|
||||
</ul>
|
||||
|
||||
@@ -69,8 +69,8 @@
|
||||
<li><a href="https://docs.python-guide.org/">English</a></li>
|
||||
<li><a href="https://python-guide-fr.readthedocs.io/fr/latest/">French</a></li>
|
||||
<li><a href="https://pythonguidecn.readthedocs.io/zh/latest/">Chinese</a></li>
|
||||
<li><a href="http://python-guideja.readthedocs.io/ja/latest/">Japanese</a></li>
|
||||
<li><a href="https://python-guideja.readthedocs.io/ja/latest/">Japanese</a></li>
|
||||
<li><a href="https://python-guide-kr.readthedocs.io/ko/latest/">Korean</a></li>
|
||||
<li><a href="http://python-guide-fil.readthedocs.io/en/latest/">Filipino</a></li>
|
||||
<li><a href="http://python-guide-pt-br.readthedocs.io/pt_BR/latest/">Brazilian Portuguese</a></li>
|
||||
<li><a href="https://python-guide-fil.readthedocs.io/en/latest/">Filipino</a></li>
|
||||
<li><a href="https://python-guide-pt-br.readthedocs.io/pt_BR/latest/">Brazilian Portuguese</a></li>
|
||||
</ul>
|
||||
|
||||
+1
-1
@@ -46,7 +46,7 @@ master_doc = 'index'
|
||||
|
||||
# General information about the project.
|
||||
project = u'pythonguide'
|
||||
copyright = u'2011–2018 <a href="http://kennethreitz.com/pages/open-projects.html">Kenneth Reitz</a> & <a href="https://realpython.com">Real Python</a>. <a href="http://creativecommons.org/licenses/by-nc-sa/3.0/">CC BY-NC-SA 3.0</a>'
|
||||
copyright = u'2011–2018 <a href="https://www.kennethreitz.org/projects">Kenneth Reitz</a> & <a href="https://realpython.com">Real Python</a>. <a href="https://creativecommons.org/licenses/by-nc-sa/3.0/">CC BY-NC-SA 3.0</a>'
|
||||
|
||||
# The version info for the project you're documenting, acts as replacement for
|
||||
# |version| and |release|, also used in various other places throughout the
|
||||
|
||||
+17
-17
@@ -87,10 +87,10 @@ using ``<Tab>`` key or any other customized keys.
|
||||
|
||||
.. _indent: http://www.vim.org/scripts/script.php?script_id=974
|
||||
.. _syntax: http://www.vim.org/scripts/script.php?script_id=790
|
||||
.. _Pyflakes: http://pypi.python.org/pypi/pyflakes/
|
||||
.. _pycodestyle: https://pypi.python.org/pypi/pycodestyle/
|
||||
.. _syntastic: https://github.com/scrooloose/syntastic
|
||||
.. _Python-mode: https://github.com/klen/python-mode
|
||||
.. _Pyflakes: http://pypi.org/project/pyflakes/
|
||||
.. _pycodestyle: https://pypi.org/project/pycodestyle/
|
||||
.. _syntastic: https://github.com/vim-syntastic/syntastic
|
||||
.. _Python-mode: https://github.com/python-mode/python-mode
|
||||
.. _SuperTab: http://www.vim.org/scripts/script.php?script_id=1643
|
||||
.. _vim-flake8: https://github.com/nvie/vim-flake8
|
||||
|
||||
@@ -103,7 +103,7 @@ Emacs user is `Python Programming in Emacs`_ at EmacsWiki.
|
||||
|
||||
1. Emacs itself comes with a Python mode.
|
||||
|
||||
.. _Python Programming in Emacs: http://emacswiki.org/emacs/PythonProgrammingInEmacs
|
||||
.. _Python Programming in Emacs: https://www.emacswiki.org/emacs/PythonProgrammingInEmacs
|
||||
|
||||
TextMate
|
||||
--------
|
||||
@@ -135,7 +135,7 @@ Atom
|
||||
Atom is web native (HTML, CSS, JS), focusing on modular design and easy plugin
|
||||
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 <https://github.com/steelbrain/linter>`_ combined with
|
||||
`linter-flake8 <https://github.com/AtomLinter/linter-flake8>`_.
|
||||
|
||||
|
||||
@@ -163,7 +163,7 @@ MIT licensed.
|
||||
|
||||
Enthought Canopy
|
||||
----------------
|
||||
`Enthought Canopy <https://www.enthought.com/products/canopy/>`_ is a Python
|
||||
`Enthought Canopy <https://www.enthought.com/product/canopy/>`_ is a Python
|
||||
IDE which is focused towards Scientists and Engineers as it provides pre
|
||||
installed libraries for data analysis.
|
||||
|
||||
@@ -171,13 +171,13 @@ Eclipse
|
||||
-------
|
||||
|
||||
The most popular Eclipse plugin for Python development is Aptana's
|
||||
`PyDev <http://pydev.org>`_.
|
||||
`PyDev <https://pydev.org>`_.
|
||||
|
||||
|
||||
Komodo IDE
|
||||
----------
|
||||
|
||||
`Komodo IDE <http://www.activestate.com/komodo-ide>`_ is developed by
|
||||
`Komodo IDE <https://www.activestate.com/products/komodo-ide/>`_ is developed by
|
||||
ActiveState and is a commercial IDE for Windows, Mac, and Linux.
|
||||
`KomodoEdit <https://github.com/Komodo/KomodoEdit>`_ is the open source
|
||||
alternative.
|
||||
@@ -188,8 +188,8 @@ Spyder
|
||||
|
||||
`Spyder <https://github.com/spyder-ide/spyder>`_ is an IDE specifically geared
|
||||
toward working with scientific Python libraries (namely
|
||||
`SciPy <http://www.scipy.org/>`_). It includes integration with pyflakes_,
|
||||
`pylint <http://www.logilab.org/857>`_ and
|
||||
`SciPy <https://www.scipy.org/>`_). It includes integration with pyflakes_,
|
||||
`pylint <https://www.logilab.org/857>`_ and
|
||||
`rope <https://github.com/python-rope/rope>`_.
|
||||
|
||||
Spyder is open source (free), offers code completion, syntax highlighting,
|
||||
@@ -242,13 +242,13 @@ Virtual Environments
|
||||
Virtual Environments provide a powerful way to isolate project package dependencies. This means that you can use packages particular to a Python project without installing them system wide and thus avoiding potential version conflicts.
|
||||
|
||||
To start using and see more information:
|
||||
`Virtual Environments <http://github.com/kennethreitz/python-guide/blob/master/docs/dev/virtualenvs.rst>`_ docs.
|
||||
`Virtual Environments <https://github.com/kennethreitz/python-guide/blob/master/docs/dev/virtualenvs.rst>`_ docs.
|
||||
|
||||
|
||||
pyenv
|
||||
-----
|
||||
|
||||
`pyenv <https://github.com/yyuu/pyenv>`_ is a tool to allow multiple versions
|
||||
`pyenv <https://github.com/pyenv/pyenv-virtualenv>`_ is a tool to allow multiple versions
|
||||
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
|
||||
@@ -264,7 +264,7 @@ pyenv. pyenv then works out which version of Python should be run based on
|
||||
environment variables, ``.python-version`` files, and the global default.
|
||||
|
||||
pyenv isn't a tool for managing virtual environments, but there is the plugin
|
||||
`pyenv-virtualenv <https://github.com/yyuu/pyenv-virtualenv>`_ which automates
|
||||
`pyenv-virtualenv <https://github.com/pyenv/pyenv-virtualenv>`_ which automates
|
||||
the creation of different environments, and also makes it possible to use the
|
||||
existing pyenv tools to switch to different environments based on environment
|
||||
variables or ``.python-version`` files.
|
||||
@@ -314,7 +314,7 @@ To download and install IPython with all its optional dependencies for the noteb
|
||||
BPython
|
||||
-------
|
||||
|
||||
`bpython <http://bpython-interpreter.org/>`_ is an alternative interface to the
|
||||
`bpython <https://bpython-interpreter.org/>`_ is an alternative interface to the
|
||||
Python interpreter for Unix-like operating systems. It has the following
|
||||
features:
|
||||
|
||||
@@ -334,8 +334,8 @@ features:
|
||||
ptpython
|
||||
--------
|
||||
|
||||
`ptpython <https://github.com/jonathanslenders/ptpython/>`_ is a REPL build
|
||||
on top of the `prompt_toolkit <http://github.com/jonathanslenders/python-prompt-toolkit>`_
|
||||
`ptpython <https://github.com/prompt-toolkit/ptpython>`_ is a REPL build
|
||||
on top of the `prompt_toolkit <https://github.com/prompt-toolkit/python-prompt-toolkit>`_
|
||||
library. It is considered to be an alternative to BPython_. Features include:
|
||||
|
||||
* Syntax highlighting
|
||||
|
||||
@@ -200,7 +200,7 @@ Congratulations, you now know how to install and use Python packages! ✨ 🍰
|
||||
Lower level: virtualenv
|
||||
=======================
|
||||
|
||||
`virtualenv <http://pypi.python.org/pypi/virtualenv>`_ is a tool to create
|
||||
`virtualenv <http://pypi.org/project/virtualenv>`_ is a tool to create
|
||||
isolated Python environments. virtualenv creates a folder which contains all the
|
||||
necessary executables to use the packages that a Python project would need.
|
||||
|
||||
|
||||
@@ -28,11 +28,11 @@ include:
|
||||
object serialization, and much more.
|
||||
|
||||
Additionally, the
|
||||
`Python Package Index <http://pypi.python.org/pypi/>`_ is available
|
||||
`Python Package Index <https://pypi.org>`_ is available
|
||||
for users to submit their packages for widespread use, similar to
|
||||
Perl's `CPAN <http://www.cpan.org>`_. There is a thriving community
|
||||
Perl's `CPAN <https://www.cpan.org>`_. There is a thriving community
|
||||
of very powerful Python frameworks and tools like
|
||||
the `Django <http://www.djangoproject.com>`_ web framework and the
|
||||
the `Django <https://www.djangoproject.com>`_ web framework and the
|
||||
`NumPy <http://numpy.scipy.org>`_ set of math routines.
|
||||
|
||||
* **integration with other systems**
|
||||
|
||||
+19
-17
@@ -41,14 +41,14 @@ thepythonguru.com is a tutorial focused on beginner programmers. It covers many
|
||||
in depth. It also teaches you some advanced constructs of Python like lambda expressions and regular expressions.
|
||||
And last it finishes off with the tutorial "How to access MySQL db using Python"
|
||||
|
||||
`Python for Beginners <http://thepythonguru.com/>`_
|
||||
`Python for Beginners <https://thepythonguru.com/>`_
|
||||
|
||||
Learn Python Interactive Tutorial
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Learnpython.org is an easy non-intimidating way to get introduced to Python.
|
||||
The website takes the same approach used on the popular
|
||||
`Try Ruby <http://tryruby.org/>`_ website. It has an interactive Python
|
||||
`Try Ruby <https://ruby.github.io/TryRuby>`_ website. It has an interactive Python
|
||||
interpreter built into the site that allows you to go through the lessons
|
||||
without having to install Python locally.
|
||||
|
||||
@@ -65,9 +65,9 @@ resource for learning all aspects of the language.
|
||||
Learn Python Step by Step
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Techbeamers.com provides step-by-step tutorials to teach Python. Each tutorial is supplemented with logically added coding snippets and equips with a follow-up quiz on the subject learned. There is a section for `Python interview questions <http://www.techbeamers.com/python-interview-questions-programmers>`_ to help job seekers. You can also read essential `Python tips <http://www.techbeamers.com/essential-python-tips-tricks-programmers>`_ and learn `best coding practices <http://www.techbeamers.com/python-code-optimization-tips-tricks>`_ for writing quality code. Here, you'll get the right platform to learn Python quickly.
|
||||
Techbeamers.com provides step-by-step tutorials to teach Python. Each tutorial is supplemented with logically added coding snippets and equips with a follow-up quiz on the subject learned. There is a section for `Python interview questions <https://www.techbeamers.com/python-interview-questions-programmers>`_ to help job seekers. You can also read essential `Python tips <https://www.techbeamers.com/essential-python-tips-tricks-programmers>`_ and learn `best coding practices <https://www.techbeamers.com/python-code-optimization-tips-tricks>`_ for writing quality code. Here, you'll get the right platform to learn Python quickly.
|
||||
|
||||
`Learn Python Basic to Advanced <http://www.techbeamers.com/python-tutorial-step-by-step>`_
|
||||
`Learn Python Basic to Advanced <https://www.techbeamers.com/python-tutorial-step-by-step>`_
|
||||
|
||||
|
||||
Online Python Tutor
|
||||
@@ -108,7 +108,7 @@ Learn Python the Hard Way
|
||||
This is an excellent beginner programmer's guide to Python. It covers "hello
|
||||
world" from the console to the web.
|
||||
|
||||
`Learn Python the Hard Way <http://learnpythonthehardway.org/book/>`_
|
||||
`Learn Python the Hard Way <https://learnpythonthehardway.org/book/>`_
|
||||
|
||||
|
||||
Crash into Python
|
||||
@@ -117,7 +117,7 @@ Crash into Python
|
||||
Also known as *Python for Programmers with 3 Hours*, this guide gives
|
||||
experienced developers from other languages a crash course on Python.
|
||||
|
||||
`Crash into Python <http://stephensugden.com/crash_into_python/>`_
|
||||
`Crash into Python <https://stephensugden.com/crash_into_python/>`_
|
||||
|
||||
|
||||
Dive Into Python 3
|
||||
@@ -161,11 +161,11 @@ For those used to languages and figuring out puzzles on their own, this can be
|
||||
a fun, attractive option. For those new to Python and programming, having an
|
||||
additional resource or reference will be helpful.
|
||||
|
||||
`Python Koans <http://bitbucket.org/gregmalcolm/python_koans>`_
|
||||
`Python Koans <https://bitbucket.org/gregmalcolm/python_koans>`_
|
||||
|
||||
More information about test driven development can be found at these resources:
|
||||
|
||||
`Test Driven Development <http://en.wikipedia.org/wiki/Test-driven_development>`_
|
||||
`Test Driven Development <https://en.wikipedia.org/wiki/Test-driven_development>`_
|
||||
|
||||
|
||||
A Byte of Python
|
||||
@@ -178,13 +178,15 @@ no previous programming experience.
|
||||
`A Byte of Python for Python 3.x <https://python.swaroopch.com/>`_
|
||||
|
||||
|
||||
Learn to Program in Python with Codeacademy
|
||||
Computer Science Path on Codecademy
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
A Codeacademy course for the absolute Python beginner. This free and interactive course provides and teaches the basics (and beyond) of Python programming while testing the user's knowledge in between progress.
|
||||
A Codeacademy course for the absolute Python beginner. This free and interactive
|
||||
course provides and teaches the basics (and beyond) of Python programming while
|
||||
testing the user's knowledge in between progress.
|
||||
This course also features a built-in interpreter for receiving instant feedback on your learning.
|
||||
|
||||
`Learn to Program in Python with Codeacademy <http://www.codecademy.com/en/tracks/python>`_
|
||||
`Computer Science Path on Codecademy <https://www.codecademy.com/learn/paths/computer-science>`_
|
||||
|
||||
|
||||
Code the blocks
|
||||
@@ -220,7 +222,7 @@ pages, it is a very brief overview of some of the most common adapations
|
||||
programmers need to make to become efficient intermediate level Python
|
||||
programmers.
|
||||
|
||||
`Effective Python <http://www.effectivepython.com/>`_
|
||||
`Effective Python <https://effectivepython.com/>`_
|
||||
|
||||
|
||||
********
|
||||
@@ -251,7 +253,7 @@ and eventually an application, including a chapter on using zc.buildout. Later
|
||||
chapters detail best practices such as writing documentation, test-driven
|
||||
development, version control, optimization, and profiling.
|
||||
|
||||
`Expert Python Programming <http://www.packtpub.com/expert-python-programming/book>`_
|
||||
`Expert Python Programming <https://www.packtpub.com/application-development/expert-python-programming>`_
|
||||
|
||||
|
||||
A Guide to Python's Magic Methods
|
||||
@@ -278,7 +280,7 @@ A Primer on Scientific Programming with Python, written by Hans Petter
|
||||
Langtangen, mainly covers Python's usage in the scientific field. In the book,
|
||||
examples are chosen from mathematics and the natural sciences.
|
||||
|
||||
`A Primer on Scientific Programming with Python <http://www.springer.com/mathematics/computational+science+%26+engineering/book/978-3-642-30292-3>`_
|
||||
`A Primer on Scientific Programming with Python <https://www.springer.com/us/book/9783642302930#otherversion=9783642302923>`_
|
||||
|
||||
Numerical Methods in Engineering with Python
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
@@ -286,7 +288,7 @@ Numerical Methods in Engineering with Python
|
||||
Numerical Methods in Engineering with Python, written by Jaan Kiusalaas,
|
||||
puts the emphasis on numerical methods and how to implement them in Python.
|
||||
|
||||
`Numerical Methods in Engineering with Python <http://www.cambridge.org/us/academic/subjects/engineering/engineering-mathematics-and-programming/numerical-methods-engineering-python-2nd-edition>`_
|
||||
`Numerical Methods in Engineering with Python <https://www.cambridge.org/us/academic/subjects/engineering/engineering-mathematics-and-programming/numerical-methods-engineering-python-2nd-edition>`_
|
||||
|
||||
|
||||
********************
|
||||
@@ -405,6 +407,6 @@ some commonly used piece of code, followed by an explanation of why the idiom
|
||||
is important. It also contains two code samples for each idiom: the "Harmful"
|
||||
way to write it and the "Idiomatic" way.
|
||||
|
||||
`For Python 2.7.3+ <http://www.amazon.com/Writing-Idiomatic-Python-2-7-3-Knupp/dp/1482372177/>`_
|
||||
`For Python 2.7.3+ <https://www.amazon.com/Writing-Idiomatic-Python-Jeff-Knupp-ebook/dp/B00B5KG0F8/>`_
|
||||
|
||||
`For Python 3.3+ <http://www.amazon.com/Writing-Idiomatic-Python-Jeff-Knupp-ebook/dp/B00B5VXMRG/>`_
|
||||
`For Python 3.3+ <https://www.amazon.com/Writing-Idiomatic-Python-Jeff-Knupp-ebook/dp/B00B5VXMRG/>`_
|
||||
|
||||
+4
-4
@@ -32,7 +32,7 @@ Planet Python
|
||||
|
||||
This is an aggregate of Python news from a growing number of developers.
|
||||
|
||||
`Planet Python <http://planet.python.org>`_
|
||||
`Planet Python <https://planetpython.org>`_
|
||||
|
||||
|
||||
*********
|
||||
@@ -42,7 +42,7 @@ This is an aggregate of Python news from a growing number of developers.
|
||||
/r/python is the Reddit Python community where users contribute and vote on
|
||||
Python-related news.
|
||||
|
||||
`/r/python <http://reddit.com/r/python>`_
|
||||
`/r/python <https://reddit.com/r/python>`_
|
||||
|
||||
|
||||
*******************
|
||||
@@ -70,7 +70,7 @@ Python Weekly
|
||||
Python Weekly is a free weekly newsletter featuring curated news, articles,
|
||||
new releases, jobs, etc. related to Python.
|
||||
|
||||
`Python Weekly <http://www.pythonweekly.com/>`_
|
||||
`Python Weekly <https://www.pythonweekly.com/>`_
|
||||
|
||||
|
||||
***********
|
||||
@@ -80,7 +80,7 @@ Python News
|
||||
Python News is the news section in the official Python web site
|
||||
(www.python.org). It briefly highlights the news from the Python community.
|
||||
|
||||
`Python News <http://www.python.org/news/>`_
|
||||
`Python News <http://www.python.org/blogs/>`_
|
||||
|
||||
|
||||
********************
|
||||
|
||||
@@ -30,5 +30,5 @@ If you'd like to contribute, there's plenty to do. Here's a short todo_ list.
|
||||
.. include:: ../../TODO.rst
|
||||
|
||||
|
||||
.. _GitHub: http://github.com/kennethreitz/python-guide/
|
||||
.. _GitHub: https://github.com/kennethreitz/python-guide/
|
||||
.. _todo: https://github.com/kennethreitz/python-guide/blob/master/TODO.rst
|
||||
|
||||
@@ -46,7 +46,7 @@ POSIX-style usage instructions.
|
||||
Plac
|
||||
****
|
||||
|
||||
`Plac <https://pypi.python.org/pypi/plac>`_ is a simple wrapper
|
||||
`Plac <https://pypi.org/project/plac>`_ is a simple wrapper
|
||||
over the Python standard library `argparse <http://docs.python.org/2/library/argparse.html>`_,
|
||||
which hides most of its complexity by using a declarative interface: the
|
||||
argument parser is inferred rather than written down imperatively. This
|
||||
|
||||
@@ -29,7 +29,7 @@ pooling are 100% automatic, powered by urllib3, which is embedded within
|
||||
Requests.
|
||||
|
||||
- `Documentation <http://docs.python-requests.org/en/latest/index.html>`_
|
||||
- `PyPi <http://pypi.python.org/pypi/requests>`_
|
||||
- `PyPi <http://pypi.org/project/requests>`_
|
||||
- `GitHub <https://github.com/kennethreitz/requests>`_
|
||||
|
||||
|
||||
|
||||
@@ -52,7 +52,7 @@ Also included is a command-line tool for exporting SQL data.
|
||||
Django ORM
|
||||
**********
|
||||
|
||||
The Django ORM is the interface used by `Django <http://www.djangoproject.com>`_
|
||||
The Django ORM is the interface used by `Django <https://www.djangoproject.com>`_
|
||||
to provide database access.
|
||||
|
||||
It's based on the idea of
|
||||
|
||||
@@ -10,19 +10,19 @@ Networking
|
||||
Twisted
|
||||
*******
|
||||
|
||||
`Twisted <http://twistedmatrix.com/trac/>`_ is an event-driven networking
|
||||
`Twisted <https://twistedmatrix.com/trac/>`_ is an event-driven networking
|
||||
engine. It can be used to build applications around many different networking
|
||||
protocols, including HTTP servers and clients, applications using SMTP, POP3,
|
||||
IMAP, or SSH protocols, instant messaging,
|
||||
and `much more <http://twistedmatrix.com/trac/wiki/Documentation>`_.
|
||||
and `much more <https://twistedmatrix.com/trac/wiki/Documentation>`_.
|
||||
|
||||
|
||||
*****
|
||||
PyZMQ
|
||||
*****
|
||||
|
||||
`PyZMQ <http://zeromq.github.com/pyzmq/>`_ is the Python binding for
|
||||
`ZeroMQ <http://www.zeromq.org/>`_, which is a high-performance asynchronous
|
||||
`PyZMQ <https://zeromq.github.com/pyzmq/>`_ is the Python binding for
|
||||
`ZeroMQ <http://zeromq.org/>`_, which is a high-performance asynchronous
|
||||
messaging library. One great advantage of ZeroMQ is that it can be used for
|
||||
message queuing without a message broker. The basic patterns for this are:
|
||||
|
||||
|
||||
@@ -160,7 +160,7 @@ add-ons are available for academics and researchers.
|
||||
Canopy
|
||||
------
|
||||
|
||||
`Canopy <https://www.enthought.com/products/canopy/>`_ is another scientific
|
||||
`Canopy <https://www.enthought.com/product/canopy/>`_ is another scientific
|
||||
Python distribution, produced by `Enthought <https://www.enthought.com/>`_.
|
||||
A limited 'Canopy Express' variant is available for free, but Enthought
|
||||
charges for the full distribution. Free licenses are available for academics.
|
||||
|
||||
@@ -76,7 +76,7 @@ C Extensions
|
||||
Cython
|
||||
------
|
||||
|
||||
`Cython <http://cython.org/>`_ implements a superset of the Python language
|
||||
`Cython <https://cython.org/>`_ implements a superset of the Python language
|
||||
with which you are able to write C and C++ modules for Python. Cython also
|
||||
allows you to call functions from compiled C libraries. Using Cython allows
|
||||
you to take advantage of Python's strong typing of variables and operations.
|
||||
@@ -448,14 +448,14 @@ Multiprocessing
|
||||
|
||||
|
||||
.. _`PyPy`: http://pypy.org
|
||||
.. _`The GIL`: http://wiki.python.org/moin/GlobalInterpreterLock
|
||||
.. _`The GIL`: https://wiki.python.org/moin/GlobalInterpreterLock
|
||||
.. _`guide`: http://www.dabeaz.com/python/UnderstandingGIL.pdf
|
||||
.. _`New GIL`: http://www.dabeaz.com/python/NewGIL.pdf
|
||||
.. _`Special care`: http://docs.python.org/c-api/init.html#threads
|
||||
.. _`Special care`: https://docs.python.org/c-api/init.html#threads
|
||||
.. _`David Beazley's`: http://www.dabeaz.com/GIL/gilvis/measure2.py
|
||||
.. _`concurrent.futures`: https://docs.python.org/3/library/concurrent.futures.html
|
||||
.. _`Future`: https://docs.python.org/3/library/concurrent.futures.html#concurrent.futures.Future
|
||||
.. _`threading`: https://docs.python.org/3/library/threading.html
|
||||
.. _`stackoverflow post`: http://stackoverflow.com/questions/26688424/python-threads-are-printing-at-the-same-time-messing-up-the-text-output
|
||||
.. _`stackoverflow post`: https://stackoverflow.com/questions/26688424/python-threads-are-printing-at-the-same-time-messing-up-the-text-output
|
||||
.. _`data race`: https://en.wikipedia.org/wiki/Race_condition
|
||||
.. _`Lock`: https://docs.python.org/3/library/threading.html#lock-objects
|
||||
|
||||
@@ -43,7 +43,7 @@ untangle also supports loading XML from a string or a URL.
|
||||
xmltodict
|
||||
*********
|
||||
|
||||
`xmltodict <http://github.com/martinblech/xmltodict>`_ is another simple
|
||||
`xmltodict <https://github.com/martinblech/xmltodict>`_ is another simple
|
||||
library that aims at making XML feel like working with JSON.
|
||||
|
||||
An XML file like this:
|
||||
|
||||
@@ -61,7 +61,7 @@ py2app no no yes yes MIT no yes yes
|
||||
.. note::
|
||||
Freezing Python code on Linux into a Windows executable was only once
|
||||
supported in PyInstaller `and later dropped
|
||||
<http://stackoverflow.com/questions/2950971/cross-compiling-a-python-script-on-linux-into-a-windows-executable#comment11890276_2951046>`_.
|
||||
<https://stackoverflow.com/questions/2950971/cross-compiling-a-python-script-on-linux-into-a-windows-executable#comment11890276_2951046>`_.
|
||||
|
||||
.. note::
|
||||
All solutions need a Microsoft Visual C++ to be installed on the target machine, except py2app.
|
||||
@@ -139,7 +139,7 @@ Prerequisite is to install :ref:`Python on Windows <install-windows>`. The last
|
||||
|
||||
3. (Optionally) `include icon <http://www.py2exe.org/index.cgi/CustomIcons>`_
|
||||
|
||||
4. (Optionally) `one-file mode <http://stackoverflow.com/questions/112698/py2exe-generate-single-executable-file#113014>`_
|
||||
4. (Optionally) `one-file mode <https://stackoverflow.com/questions/112698/py2exe-generate-single-executable-file#113014>`_
|
||||
|
||||
5. Generate :file:`.exe` into :file:`dist` directory:
|
||||
|
||||
|
||||
@@ -48,7 +48,7 @@ On Linux, you may also want to consider
|
||||
For Python Developers
|
||||
*********************
|
||||
|
||||
If you're writing an open source Python module, `PyPI <http://pypi.python.org>`_
|
||||
If you're writing an open source Python module, `PyPI <http://pypi.org>`_
|
||||
, more properly known as *The Cheeseshop*, is the place to host it.
|
||||
|
||||
|
||||
@@ -56,8 +56,8 @@ If you're writing an open source Python module, `PyPI <http://pypi.python.org>`_
|
||||
Pip vs. easy_install
|
||||
--------------------
|
||||
|
||||
Use `pip <http://pypi.python.org/pypi/pip>`_. More details
|
||||
`here <http://stackoverflow.com/questions/3220404/why-use-pip-over-easy-install>`_.
|
||||
Use `pip <http://pypi.org/project/pip>`_. More details
|
||||
`here <https://stackoverflow.com/questions/3220404/why-use-pip-over-easy-install>`_.
|
||||
|
||||
|
||||
Personal PyPI
|
||||
@@ -105,7 +105,7 @@ I got fooled by that, one time. But if you feel that creating a folder called
|
||||
pypiserver
|
||||
++++++++++
|
||||
|
||||
`pypiserver <https://pypi.python.org/pypi/pypiserver>`_ is a minimal PyPI
|
||||
`pypiserver <https://pypi.org/project/pypiserver>`_ is a minimal PyPI
|
||||
compatible server. It can be used to serve a set of packages to easy_install
|
||||
or pip. It includes helpful features like an administrative command
|
||||
(``-U``) which will update all its packages to their latest versions
|
||||
|
||||
@@ -38,7 +38,7 @@ it makes it much easier for you to use other third-party Python libraries.
|
||||
Setuptools & Pip
|
||||
****************
|
||||
|
||||
The two most crucial third-party Python packages are `setuptools <https://pypi.python.org/pypi/setuptools>`_ and `pip <https://pip.pypa.io/en/stable/>`_.
|
||||
The two most crucial third-party Python packages are `setuptools <https://pypi.org/project/setuptools>`_ and `pip <https://pip.pypa.io/en/stable/>`_.
|
||||
|
||||
Once installed, you can download, install and uninstall any compliant Python software
|
||||
product with a single command. It also enables you to add this network installation
|
||||
@@ -75,6 +75,5 @@ manage your virtual environments.
|
||||
|
||||
--------------------------------
|
||||
|
||||
This page is a remixed version of `another guide <http://www.stuartellis.eu/articles/python-development-windows/>`_,
|
||||
This page is a remixed version of `another guide <https://www.stuartellis.name/articles/python-development-windows/>`_,
|
||||
which is available under the same license.
|
||||
|
||||
|
||||
@@ -33,7 +33,7 @@ Let's install a real version of Python.
|
||||
Before installing Python, you'll need to install a C compiler. The fastest way
|
||||
is to install the Xcode Command Line Tools by running
|
||||
``xcode-select --install``. You can also download the full version of
|
||||
`Xcode <http://developer.apple.com/xcode/>`_ from the Mac App Store, or the
|
||||
`Xcode <https://developer.apple.com/xcode/>`_ from the Mac App Store, or the
|
||||
minimal but unofficial
|
||||
`OSX-GCC-Installer <https://github.com/kennethreitz/osx-gcc-installer#readme>`_
|
||||
package.
|
||||
@@ -50,9 +50,9 @@ package.
|
||||
|
||||
While OS X comes with a large number of Unix utilities, those familiar with
|
||||
Linux systems will notice one key component missing: a decent package manager.
|
||||
`Homebrew <http://brew.sh>`_ fills this void.
|
||||
`Homebrew <https://brew.sh>`_ fills this void.
|
||||
|
||||
To `install Homebrew <http://brew.sh/#install>`_, open :file:`Terminal` or
|
||||
To `install Homebrew <https://brew.sh/#install>`_, open :file:`Terminal` or
|
||||
your favorite OS X terminal emulator and run
|
||||
|
||||
.. code-block:: console
|
||||
@@ -129,5 +129,5 @@ To start using this and see more information: :ref:`Virtual Environments <virtua
|
||||
|
||||
--------------------------------
|
||||
|
||||
This page is a remixed version of `another guide <http://www.stuartellis.eu/articles/python-development-windows/>`_,
|
||||
This page is a remixed version of `another guide <https://www.stuartellis.name/articles/python-development-windows/>`_,
|
||||
which is available under the same license.
|
||||
|
||||
@@ -13,7 +13,7 @@ Installing Python 2 on Windows
|
||||
First, download the `latest version <https://www.python.org/ftp/python/2.7.15/python-2.7.15.msi>`_
|
||||
of Python 2.7 from the official website. If you want to be sure you are installing a fully
|
||||
up-to-date version, click the Downloads > Windows link from the home page of the
|
||||
`Python.org web site <http://python.org>`_ .
|
||||
`Python.org web site <https://python.org>`_ .
|
||||
|
||||
The Windows version is provided as an MSI package. To install it manually, just
|
||||
double-click the file. The MSI package format allows Windows administrators to
|
||||
@@ -57,7 +57,7 @@ makes it much easier for you to use other third-party Python libraries.
|
||||
Setuptools + Pip
|
||||
****************
|
||||
|
||||
The two most crucial third-party Python packages are `setuptools <https://pypi.python.org/pypi/setuptools>`_ and `pip <https://pip.pypa.io/en/stable/>`_.
|
||||
The two most crucial third-party Python packages are `setuptools <https://pypi.org/project/setuptools>`_ and `pip <https://pip.pypa.io/en/stable/>`_.
|
||||
|
||||
Once installed, you can download, install and uninstall any compliant Python software
|
||||
product with a single command. It also enables you to add this network installation
|
||||
@@ -92,5 +92,5 @@ To start using this and see more information: :ref:`Virtual Environments <virtua
|
||||
|
||||
--------------------------------
|
||||
|
||||
This page is a remixed version of `another guide <http://www.stuartellis.eu/articles/python-development-windows/>`_,
|
||||
This page is a remixed version of `another guide <https://www.stuartellis.name/articles/python-development-windows/>`_,
|
||||
which is available under the same license.
|
||||
|
||||
@@ -67,7 +67,7 @@ This will launch the Python 3 interpreter.
|
||||
Setuptools & Pip
|
||||
****************
|
||||
|
||||
The two most crucial third-party Python packages are `setuptools <https://pypi.python.org/pypi/setuptools>`_ and `pip <https://pip.pypa.io/en/stable/>`_.
|
||||
The two most crucial third-party Python packages are `setuptools <https://pypi.org/project/setuptools>`_ and `pip <https://pip.pypa.io/en/stable/>`_.
|
||||
|
||||
Once installed, you can download, install and uninstall any compliant Python software
|
||||
product with a single command. It also enables you to add this network installation
|
||||
@@ -113,6 +113,5 @@ So, onward! To the :ref:`Pipenv & Virtual Environments <virtualenvironments-ref>
|
||||
|
||||
--------------------------------
|
||||
|
||||
This page is a remixed version of `another guide <http://www.stuartellis.eu/articles/python-development-windows/>`_,
|
||||
This page is a remixed version of `another guide <https://www.stuartellis.name/articles/python-development-windows/>`_,
|
||||
which is available under the same license.
|
||||
|
||||
|
||||
@@ -27,7 +27,7 @@ Doing it Right
|
||||
Let's install a real version of Python.
|
||||
|
||||
Before installing Python, you'll need to install GCC. GCC can be obtained
|
||||
by downloading `Xcode <http://developer.apple.com/xcode/>`_, the smaller
|
||||
by downloading `Xcode <https://developer.apple.com/xcode/>`_, the smaller
|
||||
`Command Line Tools <https://developer.apple.com/downloads/>`_ (must have an
|
||||
Apple account) or the even smaller `OSX-GCC-Installer <https://github.com/kennethreitz/osx-gcc-installer#readme>`_
|
||||
package.
|
||||
@@ -43,9 +43,9 @@ package.
|
||||
|
||||
While OS X comes with a large number of Unix utilities, those familiar with
|
||||
Linux systems will notice one key component missing: a package manager.
|
||||
`Homebrew <http://brew.sh>`_ fills this void.
|
||||
`Homebrew <https://brew.sh>`_ fills this void.
|
||||
|
||||
To `install Homebrew <http://brew.sh/#install>`_, open :file:`Terminal` or
|
||||
To `install Homebrew <https://brew.sh/#install>`_, open :file:`Terminal` or
|
||||
your favorite OS X terminal emulator and run
|
||||
|
||||
.. code-block:: console
|
||||
@@ -139,5 +139,5 @@ So, onward! To the :ref:`Pipenv & Virtual Environments <virtualenvironments-ref>
|
||||
|
||||
--------------------------------
|
||||
|
||||
This page is a remixed version of `another guide <http://www.stuartellis.eu/articles/python-development-windows/>`_,
|
||||
This page is a remixed version of `another guide <https://www.stuartellis.name/articles/python-development-windows/>`_,
|
||||
which is available under the same license.
|
||||
|
||||
@@ -24,7 +24,7 @@ Once you've run this command, you should be able to launch Python directly from
|
||||
Setuptools + Pip
|
||||
****************
|
||||
|
||||
The two most crucial third-party Python packages are `setuptools <https://pypi.python.org/pypi/setuptools>`_ and `pip <https://pip.pypa.io/en/stable/>`_,
|
||||
The two most crucial third-party Python packages are `setuptools <https://pypi.org/project/setuptools>`_ and `pip <https://pip.pypa.io/en/stable/>`_,
|
||||
which let you download, install and uninstall any compliant Python software
|
||||
product with a single command. It also enables you to add this network installation
|
||||
capability to your own Python software with very little work.
|
||||
@@ -52,5 +52,5 @@ So, onward! To the :ref:`Pipenv & Virtual Environments <virtualenvironments-ref>
|
||||
|
||||
--------------------------------
|
||||
|
||||
This page is a remixed version of `another guide <http://www.stuartellis.eu/articles/python-development-windows/>`_,
|
||||
This page is a remixed version of `another guide <https://www.stuartellis.name/articles/python-development-windows/>`_,
|
||||
which is available under the same license.
|
||||
|
||||
@@ -70,9 +70,9 @@ this in your ``__init__.py``:
|
||||
Logging in an Application
|
||||
*************************
|
||||
|
||||
The `twelve factor app <http://12factor.net>`_, an authoritative reference
|
||||
The `twelve factor app <https://12factor.net>`_, an authoritative reference
|
||||
for good practice in application development, contains a section on
|
||||
`logging best practice <http://12factor.net/logs>`_. It emphatically
|
||||
`logging best practice <https://12factor.net/logs>`_. It emphatically
|
||||
advocates for treating log events as an event stream, and for
|
||||
sending that event stream to standard output to be handled by the
|
||||
application environment.
|
||||
@@ -192,9 +192,9 @@ Example Configuration Directly in Code
|
||||
logger.debug('often makes a very good meal of %s', 'visiting tourists')
|
||||
|
||||
|
||||
.. _basic logging tutorial: http://docs.python.org/howto/logging.html#logging-basic-tutorial
|
||||
.. _logging configuration: https://docs.python.org/howto/logging.html#configuring-logging
|
||||
.. _logging tutorial: http://docs.python.org/howto/logging.html
|
||||
.. _configuring logging for a library: https://docs.python.org/howto/logging.html#configuring-logging-for-a-library
|
||||
.. _log record: https://docs.python.org/library/logging.html#logrecord-attributes
|
||||
.. _basic logging tutorial: http://docs.python.org/3/howto/logging.html#logging-basic-tutorial
|
||||
.. _logging configuration: https://docs.python.org/3/howto/logging.html#configuring-logging
|
||||
.. _logging tutorial: http://docs.python.org/3/howto/logging.html
|
||||
.. _configuring logging for a library: https://docs.python.org/3/howto/logging.html#configuring-logging-for-a-library
|
||||
.. _log record: https://docs.python.org/3/library/logging.html#logrecord-attributes
|
||||
.. _requests source: https://github.com/kennethreitz/requests
|
||||
|
||||
@@ -271,7 +271,7 @@ Idioms
|
||||
|
||||
A programming idiom, put simply, is a *way* to write code. The notion of
|
||||
programming idioms is discussed amply at `c2 <http://c2.com/cgi/wiki?ProgrammingIdiom>`_
|
||||
and at `Stack Overflow <http://stackoverflow.com/questions/302459/what-is-a-programming-idiom>`_.
|
||||
and at `Stack Overflow <https://stackoverflow.com/questions/302459/what-is-a-programming-idiom>`_.
|
||||
|
||||
Idiomatic Python code is often referred to as being *Pythonic*.
|
||||
|
||||
@@ -403,7 +403,7 @@ hand, the hash of the item will tell Python where in the set to look for
|
||||
a matching item. As a result, the search can be done quickly, even if the
|
||||
set is large. Searching in dictionaries works the same way. For
|
||||
more information see this
|
||||
`StackOverflow <http://stackoverflow.com/questions/513882/python-list-vs-dict-for-look-up-table>`_
|
||||
`StackOverflow <https://stackoverflow.com/questions/513882/python-list-vs-dict-for-look-up-table>`_
|
||||
page. For detailed information on the amount of time various common operations
|
||||
take on each of these data structures, see
|
||||
`this page <https://wiki.python.org/moin/TimeComplexity?>`_.
|
||||
@@ -496,7 +496,7 @@ Then run it on a file or series of files to get a report of any violations.
|
||||
optparse.py:472:29: E221 multiple spaces before operator
|
||||
optparse.py:544:21: W601 .has_key() is deprecated, use 'in'
|
||||
|
||||
The program `autopep8 <https://pypi.python.org/pypi/autopep8/>`_ can be used to
|
||||
The program `autopep8 <https://pypi.org/project/autopep8/>`_ can be used to
|
||||
automatically reformat code in the PEP 8 style. Install the program with:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
@@ -274,7 +274,7 @@ This way if you ever switch to a newer Python version and no longer need the
|
||||
unittest2 module, you can simply change the import in your test module without
|
||||
the need to change any other code.
|
||||
|
||||
`unittest2 <http://pypi.python.org/pypi/unittest2>`_
|
||||
`unittest2 <http://pypi.org/project/unittest2>`_
|
||||
|
||||
|
||||
mock
|
||||
|
||||
Reference in New Issue
Block a user