Sophie

Sophie

distrib > Mageia > 7 > armv7hl > media > core-updates > by-pkgid > e1011ddec34cda34f3a002b121247943 > files > 1035

python-docs-2.7.17-1.1.mga7.noarch.rpm


<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta charset="utf-8" />
    <title>2. Using Python on Unix platforms &#8212; Python 2.7.17 documentation</title>
    <link rel="stylesheet" href="../_static/classic.css" type="text/css" />
    <link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
    
    <script type="text/javascript" id="documentation_options" data-url_root="../" src="../_static/documentation_options.js"></script>
    <script type="text/javascript" src="../_static/jquery.js"></script>
    <script type="text/javascript" src="../_static/underscore.js"></script>
    <script type="text/javascript" src="../_static/doctools.js"></script>
    <script type="text/javascript" src="../_static/language_data.js"></script>
    
    <script type="text/javascript" src="../_static/sidebar.js"></script>
    
    <link rel="search" type="application/opensearchdescription+xml"
          title="Search within Python 2.7.17 documentation"
          href="../_static/opensearch.xml"/>
    <link rel="author" title="About these documents" href="../about.html" />
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="copyright" title="Copyright" href="../copyright.html" />
    <link rel="next" title="3. Using Python on Windows" href="windows.html" />
    <link rel="prev" title="1. Command line and environment" href="cmdline.html" />
    <link rel="shortcut icon" type="image/png" href="../_static/py.png" />
    <link rel="canonical" href="https://docs.python.org/2/using/unix.html" />
    <script type="text/javascript" src="../_static/copybutton.js"></script>
    
 
    

  </head><body>  
    <div class="related" role="navigation" aria-label="related navigation">
      <h3>Navigation</h3>
      <ul>
        <li class="right" style="margin-right: 10px">
          <a href="../genindex.html" title="General Index"
             accesskey="I">index</a></li>
        <li class="right" >
          <a href="../py-modindex.html" title="Python Module Index"
             >modules</a> |</li>
        <li class="right" >
          <a href="windows.html" title="3. Using Python on Windows"
             accesskey="N">next</a> |</li>
        <li class="right" >
          <a href="cmdline.html" title="1. Command line and environment"
             accesskey="P">previous</a> |</li>
        <li><img src="../_static/py.png" alt=""
                 style="vertical-align: middle; margin-top: -1px"/></li>
        <li><a href="https://www.python.org/">Python</a> &#187;</li>
        <li>
          <a href="../index.html">Python 2.7.17 documentation</a> &#187;
        </li>

          <li class="nav-item nav-item-1"><a href="index.html" accesskey="U">Python Setup and Usage</a> &#187;</li> 
      </ul>
    </div>    

    <div class="document">
      <div class="documentwrapper">
        <div class="bodywrapper">
          <div class="body" role="main">
            
  <div class="section" id="using-python-on-unix-platforms">
<span id="using-on-unix"></span><h1>2. Using Python on Unix platforms<a class="headerlink" href="#using-python-on-unix-platforms" title="Permalink to this headline">¶</a></h1>
<div class="section" id="getting-and-installing-the-latest-version-of-python">
<h2>2.1. Getting and installing the latest version of Python<a class="headerlink" href="#getting-and-installing-the-latest-version-of-python" title="Permalink to this headline">¶</a></h2>
<div class="section" id="on-linux">
<h3>2.1.1. On Linux<a class="headerlink" href="#on-linux" title="Permalink to this headline">¶</a></h3>
<p>Python comes preinstalled on most Linux distributions, and is available as a
package on all others.  However there are certain features you might want to use
that are not available on your distro’s package.  You can easily compile the
latest version of Python from source.</p>
<p>In the event that Python doesn’t come preinstalled and isn’t in the repositories as
well, you can easily make packages for your own distro.  Have a look at the
following links:</p>
<div class="admonition seealso">
<p class="admonition-title">See also</p>
<dl class="simple">
<dt><a class="reference external" href="https://www.debian.org/doc/manuals/maint-guide/first.en.html">https://www.debian.org/doc/manuals/maint-guide/first.en.html</a></dt><dd><p>for Debian users</p>
</dd>
<dt><a class="reference external" href="https://en.opensuse.org/Portal:Packaging">https://en.opensuse.org/Portal:Packaging</a></dt><dd><p>for OpenSuse users</p>
</dd>
<dt><a class="reference external" href="https://docs.fedoraproject.org/en-US/Fedora_Draft_Documentation/0.1/html/RPM_Guide/ch-creating-rpms.html">https://docs.fedoraproject.org/en-US/Fedora_Draft_Documentation/0.1/html/RPM_Guide/ch-creating-rpms.html</a></dt><dd><p>for Fedora users</p>
</dd>
<dt><a class="reference external" href="http://www.slackbook.org/html/package-management-making-packages.html">http://www.slackbook.org/html/package-management-making-packages.html</a></dt><dd><p>for Slackware users</p>
</dd>
</dl>
</div>
</div>
<div class="section" id="on-freebsd-and-openbsd">
<h3>2.1.2. On FreeBSD and OpenBSD<a class="headerlink" href="#on-freebsd-and-openbsd" title="Permalink to this headline">¶</a></h3>
<ul>
<li><p>FreeBSD users, to add the package use:</p>
<div class="highlight-sh notranslate"><div class="highlight"><pre><span></span>pkg install python3
</pre></div>
</div>
</li>
<li><p>OpenBSD users, to add the package use:</p>
<div class="highlight-sh notranslate"><div class="highlight"><pre><span></span>pkg_add -r python

pkg_add ftp://ftp.openbsd.org/pub/OpenBSD/4.2/packages/&lt;insert your architecture here&gt;/python-&lt;version&gt;.tgz
</pre></div>
</div>
<p>For example i386 users get the 2.5.1 version of Python using:</p>
<div class="highlight-sh notranslate"><div class="highlight"><pre><span></span>pkg_add ftp://ftp.openbsd.org/pub/OpenBSD/4.2/packages/i386/python-2.5.1p2.tgz
</pre></div>
</div>
</li>
</ul>
</div>
<div class="section" id="on-opensolaris">
<h3>2.1.3. On OpenSolaris<a class="headerlink" href="#on-opensolaris" title="Permalink to this headline">¶</a></h3>
<p>You can get Python from <a class="reference external" href="https://www.opencsw.org/">OpenCSW</a>.  Various versions
of Python are available and can be installed with e.g. <code class="docutils literal notranslate"><span class="pre">pkgutil</span> <span class="pre">-i</span> <span class="pre">python27</span></code>.</p>
</div>
</div>
<div class="section" id="building-python">
<span id="building-python-on-unix"></span><h2>2.2. Building Python<a class="headerlink" href="#building-python" title="Permalink to this headline">¶</a></h2>
<p>If you want to compile CPython yourself, first thing you should do is get the
<a class="reference external" href="https://www.python.org/downloads/source/">source</a>. You can download either the
latest release’s source or just grab a fresh <a class="reference external" href="https://docs.python.org/devguide/setup.html#getting-the-source-code">clone</a>.  (If you want
to contribute patches, you will need a clone.)</p>
<p>The build process consists in the usual</p>
<div class="highlight-sh notranslate"><div class="highlight"><pre><span></span>./configure
make
make install
</pre></div>
</div>
<p>invocations. Configuration options and caveats for specific Unix platforms are
extensively documented in the <a class="reference external" href="https://github.com/python/cpython/tree/2.7/README">README</a> file in the root of the Python
source tree.</p>
<div class="admonition warning">
<p class="admonition-title">Warning</p>
<p><code class="docutils literal notranslate"><span class="pre">make</span> <span class="pre">install</span></code> can overwrite or masquerade the <code class="file docutils literal notranslate"><span class="pre">python</span></code> binary.
<code class="docutils literal notranslate"><span class="pre">make</span> <span class="pre">altinstall</span></code> is therefore recommended instead of <code class="docutils literal notranslate"><span class="pre">make</span> <span class="pre">install</span></code>
since it only installs <code class="file docutils literal notranslate"><em><span class="pre">exec_prefix</span></em><span class="pre">/bin/python</span><em><span class="pre">version</span></em></code>.</p>
</div>
</div>
<div class="section" id="python-related-paths-and-files">
<h2>2.3. Python-related paths and files<a class="headerlink" href="#python-related-paths-and-files" title="Permalink to this headline">¶</a></h2>
<p>These are subject to difference depending on local installation conventions;
<span class="target" id="index-0"></span><code class="xref std std-envvar docutils literal notranslate"><span class="pre">prefix</span></code> (<code class="docutils literal notranslate"><span class="pre">${prefix}</span></code>) and <span class="target" id="index-1"></span><code class="xref std std-envvar docutils literal notranslate"><span class="pre">exec_prefix</span></code> (<code class="docutils literal notranslate"><span class="pre">${exec_prefix}</span></code>)
are installation-dependent and should be interpreted as for GNU software; they
may be the same.</p>
<p>For example, on most Linux systems, the default for both is <code class="file docutils literal notranslate"><span class="pre">/usr</span></code>.</p>
<table class="docutils align-center">
<colgroup>
<col style="width: 53%" />
<col style="width: 47%" />
</colgroup>
<thead>
<tr class="row-odd"><th class="head"><p>File/directory</p></th>
<th class="head"><p>Meaning</p></th>
</tr>
</thead>
<tbody>
<tr class="row-even"><td><p><code class="file docutils literal notranslate"><em><span class="pre">exec_prefix</span></em><span class="pre">/bin/python</span></code></p></td>
<td><p>Recommended location of the interpreter.</p></td>
</tr>
<tr class="row-odd"><td><p><code class="file docutils literal notranslate"><em><span class="pre">prefix</span></em><span class="pre">/lib/python</span><em><span class="pre">version</span></em></code>,
<code class="file docutils literal notranslate"><em><span class="pre">exec_prefix</span></em><span class="pre">/lib/python</span><em><span class="pre">version</span></em></code></p></td>
<td><p>Recommended locations of the directories
containing the standard modules.</p></td>
</tr>
<tr class="row-even"><td><p><code class="file docutils literal notranslate"><em><span class="pre">prefix</span></em><span class="pre">/include/python</span><em><span class="pre">version</span></em></code>,
<code class="file docutils literal notranslate"><em><span class="pre">exec_prefix</span></em><span class="pre">/include/python</span><em><span class="pre">version</span></em></code></p></td>
<td><p>Recommended locations of the directories
containing the include files needed for
developing Python extensions and
embedding the interpreter.</p></td>
</tr>
<tr class="row-odd"><td><p><code class="file docutils literal notranslate"><span class="pre">~/.pythonrc.py</span></code></p></td>
<td><p>User-specific initialization file loaded
by the user module; not used by default
or by most applications.</p></td>
</tr>
</tbody>
</table>
</div>
<div class="section" id="miscellaneous">
<h2>2.4. Miscellaneous<a class="headerlink" href="#miscellaneous" title="Permalink to this headline">¶</a></h2>
<p>To easily use Python scripts on Unix, you need to make them executable,
e.g. with</p>
<div class="highlight-sh notranslate"><div class="highlight"><pre><span></span>$ chmod +x script
</pre></div>
</div>
<p>and put an appropriate Shebang line at the top of the script.  A good choice is
usually</p>
<div class="highlight-sh notranslate"><div class="highlight"><pre><span></span><span class="ch">#!/usr/bin/env python</span>
</pre></div>
</div>
<p>which searches for the Python interpreter in the whole <span class="target" id="index-2"></span><code class="xref std std-envvar docutils literal notranslate"><span class="pre">PATH</span></code>.  However,
some Unices may not have the <strong class="program">env</strong> command, so you may need to hardcode
<code class="docutils literal notranslate"><span class="pre">/usr/bin/python</span></code> as the interpreter path.</p>
<p>To use shell commands in your Python scripts, look at the <a class="reference internal" href="../library/subprocess.html#module-subprocess" title="subprocess: Subprocess management."><code class="xref py py-mod docutils literal notranslate"><span class="pre">subprocess</span></code></a> module.</p>
</div>
<div class="section" id="editors-and-ides">
<h2>2.5. Editors and IDEs<a class="headerlink" href="#editors-and-ides" title="Permalink to this headline">¶</a></h2>
<p>There are a number of IDEs that support Python programming language.
Many editors and IDEs provide syntax highlighting, debugging tools, and <span class="target" id="index-3"></span><a class="pep reference external" href="https://www.python.org/dev/peps/pep-0008"><strong>PEP 8</strong></a> checks.</p>
<p>Please go to <a class="reference external" href="https://wiki.python.org/moin/PythonEditors">Python Editors</a> and
<a class="reference external" href="https://wiki.python.org/moin/IntegratedDevelopmentEnvironments">Integrated Development Environments</a>
for a comprehensive list.</p>
</div>
</div>


          </div>
        </div>
      </div>
      <div class="sphinxsidebar" role="navigation" aria-label="main navigation">
        <div class="sphinxsidebarwrapper">
  <h3><a href="../contents.html">Table of Contents</a></h3>
  <ul>
<li><a class="reference internal" href="#">2. Using Python on Unix platforms</a><ul>
<li><a class="reference internal" href="#getting-and-installing-the-latest-version-of-python">2.1. Getting and installing the latest version of Python</a><ul>
<li><a class="reference internal" href="#on-linux">2.1.1. On Linux</a></li>
<li><a class="reference internal" href="#on-freebsd-and-openbsd">2.1.2. On FreeBSD and OpenBSD</a></li>
<li><a class="reference internal" href="#on-opensolaris">2.1.3. On OpenSolaris</a></li>
</ul>
</li>
<li><a class="reference internal" href="#building-python">2.2. Building Python</a></li>
<li><a class="reference internal" href="#python-related-paths-and-files">2.3. Python-related paths and files</a></li>
<li><a class="reference internal" href="#miscellaneous">2.4. Miscellaneous</a></li>
<li><a class="reference internal" href="#editors-and-ides">2.5. Editors and IDEs</a></li>
</ul>
</li>
</ul>

  <h4>Previous topic</h4>
  <p class="topless"><a href="cmdline.html"
                        title="previous chapter">1. Command line and environment</a></p>
  <h4>Next topic</h4>
  <p class="topless"><a href="windows.html"
                        title="next chapter">3. Using Python on Windows</a></p>
  <div role="note" aria-label="source link">
    <h3>This Page</h3>
    <ul class="this-page-menu">
      <li><a href="../_sources/using/unix.rst.txt"
            rel="nofollow">Show Source</a></li>
    </ul>
   </div>
<div id="searchbox" style="display: none" role="search">
  <h3>Quick search</h3>
    <div class="searchformwrapper">
    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" />
      <input type="submit" value="Go" />
    </form>
    </div>
</div>
<script type="text/javascript">$('#searchbox').show(0);</script>
        </div>
      </div>
      <div class="clearer"></div>
    </div>  
    <div class="related" role="navigation" aria-label="related navigation">
      <h3>Navigation</h3>
      <ul>
        <li class="right" style="margin-right: 10px">
          <a href="../genindex.html" title="General Index"
             >index</a></li>
        <li class="right" >
          <a href="../py-modindex.html" title="Python Module Index"
             >modules</a> |</li>
        <li class="right" >
          <a href="windows.html" title="3. Using Python on Windows"
             >next</a> |</li>
        <li class="right" >
          <a href="cmdline.html" title="1. Command line and environment"
             >previous</a> |</li>
        <li><img src="../_static/py.png" alt=""
                 style="vertical-align: middle; margin-top: -1px"/></li>
        <li><a href="https://www.python.org/">Python</a> &#187;</li>
        <li>
          <a href="../index.html">Python 2.7.17 documentation</a> &#187;
        </li>

          <li class="nav-item nav-item-1"><a href="index.html" >Python Setup and Usage</a> &#187;</li> 
      </ul>
    </div>  
    <div class="footer">
    &copy; <a href="../copyright.html">Copyright</a> 1990-2019, Python Software Foundation.
    <br />
    The Python Software Foundation is a non-profit corporation.
    <a href="https://www.python.org/psf/donations/">Please donate.</a>
    <br />
    Last updated on Oct 19, 2019.
    <a href="../bugs.html">Found a bug</a>?
    <br />
    Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 2.0.1.
    </div>

  </body>
</html>