Skip to content

Commit 81b522f

Browse files
committed
Website build
1 parent 4e86132 commit 81b522f

File tree

6 files changed

+21
-21
lines changed

6 files changed

+21
-21
lines changed

0_preface.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -236,7 +236,7 @@ <h2>Changes in the second and third editions<a class="headerlink" href="#changes
236236
workspaces in <a class="reference internal" href="2_programs_in_files.html#workspaces"><span class="std std-numref">Section 2.2.1</span></a>, and the Flake8 extension in
237237
<a class="reference internal" href="4_style.html#flake8-extension"><span class="std std-numref">Section 4.2.2</span></a>. Together, these provide correctly integrated code
238238
linting. It also consistently uses <code class="xref py py-obj docutils literal notranslate"><span class="pre">python</span> <span class="pre">-m</span></code> to invoke tools such as <code class="xref py py-obj docutils literal notranslate"><span class="pre">pip</span></code>,
239-
<a class="reference external" href="https://docs.pytest.org/en/latest/index.html#module-pytest" title="(in pytest v8.5.0.dev130)"><code class="xref py py-obj docutils literal notranslate"><span class="pre">pytest</span></code></a> and <code class="xref py py-obj docutils literal notranslate"><span class="pre">flake8</span></code>. This is less error-prone for students. The description
239+
<a class="reference external" href="https://docs.pytest.org/en/latest/index.html#module-pytest" title="(in pytest v8.5.0.dev154)"><code class="xref py py-obj docutils literal notranslate"><span class="pre">pytest</span></code></a> and <code class="xref py py-obj docutils literal notranslate"><span class="pre">flake8</span></code>. This is less error-prone for students. The description
240240
of <a class="reference external" href="https://docs.python.org/3/reference/compound_stmts.html#finally" title="(in Python v3.13)"><code class="xref std std-keyword docutils literal notranslate"><span class="pre">finally</span></code></a> in <a class="reference internal" href="6_exceptions.html#else-finally"><span class="std std-numref">Section 6.5.2</span></a> has been also improved.</p>
241241
</section>
242242
</section>

1_introduction.html

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@
117117
are:</p>
118118
<blockquote>
119119
<div><ol class="arabic simple">
120-
<li><p>Python version 3.9 or later (3.11 or later recommended).</p></li>
120+
<li><p>Python version 3.10 or later (3.13 or later recommended).</p></li>
121121
<li><p>Git (the revision control system we’re going to use).</p></li>
122122
<li><p>A Python-aware text editor or <a class="reference internal" href="#term-integrated-development-environment"><span class="xref std std-term">integrated development
123123
environment</span></a> (IDE). Visual Studio Code is recommended, and all the
@@ -141,7 +141,7 @@ <h3><span class="section-number">1.1.1. </span>Python versions<a class="headerli
141141
references in this book are to that version.</p>
142142
<p>Within Python 3, there is a minor version release approximately every year.
143143
Once released, this receives security updates for 5 years. At the time of
144-
writing, Python 3.12 is the newest release version, and Python 3.9 is the
144+
writing, Python 3.14 is about to be released, and Python 3.10 is the
145145
oldest version that still receives security fixes. The user-facing differences
146146
between minor Python versions are usually fairly minimal, so for the purposes
147147
of this book it doesn’t matter which of the currently supported versions of
@@ -161,20 +161,20 @@ <h3><span class="section-number">1.1.1. </span>Python versions<a class="headerli
161161
<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="go">&gt; py --version</span>
162162
</pre></div>
163163
</div>
164-
<p>On the author’s computer, this prints <code class="xref py py-obj docutils literal notranslate"><span class="pre">Python</span> <span class="pre">3.12.6</span></code>, which is the version of
164+
<p>On the author’s computer, this prints <code class="xref py py-obj docutils literal notranslate"><span class="pre">Python</span> <span class="pre">3.13.3</span></code>, which is the version of
165165
Python I expect to be using. This means I can launch Python on Windows using
166166
just <code class="xref py py-obj docutils literal notranslate"><span class="pre">py</span></code>. If it printed a different version, then I could attempt to force it
167167
to use the version I want like this:</p>
168-
<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="go">&gt; py -3.12 --version</span>
168+
<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="go">&gt; py -3.13 --version</span>
169169
</pre></div>
170170
</div>
171171
<p>If that fails, then there is an issue with your Python documentation and you
172172
need to go back to the start of this section to work out how to install the
173173
right version.</p>
174174
<p>On Mac or Linux, the safest way to ensure that you are running the right
175-
version of Python is to use the full version number, e.g. <code class="xref py py-obj docutils literal notranslate"><span class="pre">python3.12</span></code>. You can
175+
version of Python is to use the full version number, e.g. <code class="xref py py-obj docutils literal notranslate"><span class="pre">python3.13</span></code>. You can
176176
check this with, for example:</p>
177-
<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="gp">$ </span>python3.12<span class="w"> </span>--version
177+
<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="gp">$ </span>python3.13<span class="w"> </span>--version
178178
</pre></div>
179179
</div>
180180
<p>If this fails, then the relevant Python version isn’t (correctly) installed and

2_programs_in_files.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -716,7 +716,7 @@ <h2><span class="section-number">2.5. </span>Testing frameworks<a class="headerl
716716
including tests in your code here.</p>
717717
<p>There are a number of Python packages which support code testing. The concepts
718718
are largely similar so rather than get bogged down in the details of multiple
719-
frameworks, we will introduce <a class="reference external" href="https://docs.pytest.org/en/latest/index.html" title="(in pytest v8.5.0.dev130)"><span class="xref std std-doc">Pytest</span></a>, which is one of the
719+
frameworks, we will introduce <a class="reference external" href="https://docs.pytest.org/en/latest/index.html" title="(in pytest v8.5.0.dev154)"><span class="xref std std-doc">Pytest</span></a>, which is one of the
720720
most widely used. Pytest is simply a Python package, so you can install it into
721721
your current environment using:</p>
722722
<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="gp gp-VirtualEnv">(PoP_venv)</span> <span class="gp">$ </span>python<span class="w"> </span>-m<span class="w"> </span>pip<span class="w"> </span>install<span class="w"> </span>pytest

8_debugging.html

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -77,12 +77,12 @@ <h2><span class="section-number">8.1. </span>Pandas<a class="headerlink" href="#
7777
because it’s a very useful tool for applied mathematicians and statisticians
7878
who need to work with real data, and partly because it’s a convenient somewhat
7979
larger library on which to practice tools and techniques for debugging.</p>
80-
<p>At the core of Pandas is the <a class="reference external" href="https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.html#pandas.DataFrame" title="(in pandas v2.3.2)"><code class="xref py py-class docutils literal notranslate"><span class="pre">DataFrame</span></code></a> class, which is
80+
<p>At the core of Pandas is the <a class="reference external" href="https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.html#pandas.DataFrame" title="(in pandas v2.3.3)"><code class="xref py py-class docutils literal notranslate"><span class="pre">DataFrame</span></code></a> class, which is
8181
a two-dimensional dataset somewhat analogous to a spreadsheet. Unlike, for
82-
example, a <a class="reference external" href="https://numpy.org/doc/stable/reference/generated/numpy.ndarray.html#numpy.ndarray" title="(in NumPy v2.3)"><code class="xref py py-class docutils literal notranslate"><span class="pre">numpy.ndarray</span></code></a>, a <a class="reference external" href="https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.html#pandas.DataFrame" title="(in pandas v2.3.2)"><code class="xref py py-class docutils literal notranslate"><span class="pre">DataFrame</span></code></a> is not indexed
82+
example, a <a class="reference external" href="https://numpy.org/doc/stable/reference/generated/numpy.ndarray.html#numpy.ndarray" title="(in NumPy v2.3)"><code class="xref py py-class docutils literal notranslate"><span class="pre">numpy.ndarray</span></code></a>, a <a class="reference external" href="https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.html#pandas.DataFrame" title="(in pandas v2.3.3)"><code class="xref py py-class docutils literal notranslate"><span class="pre">DataFrame</span></code></a> is not indexed
8383
by a pair of numbers, but is instead organised as a collection of named
84-
one-dimensional <a class="reference external" href="https://pandas.pydata.org/docs/reference/api/pandas.Series.html#pandas.Series" title="(in pandas v2.3.2)"><code class="xref py py-class docutils literal notranslate"><span class="pre">pandas.Series</span></code></a> of data. One can think of a
85-
<a class="reference external" href="https://pandas.pydata.org/docs/reference/api/pandas.Series.html#pandas.Series" title="(in pandas v2.3.2)"><code class="xref py py-class docutils literal notranslate"><span class="pre">pandas.Series</span></code></a> as a column of data with a title. This perhaps best
84+
one-dimensional <a class="reference external" href="https://pandas.pydata.org/docs/reference/api/pandas.Series.html#pandas.Series" title="(in pandas v2.3.3)"><code class="xref py py-class docutils literal notranslate"><span class="pre">pandas.Series</span></code></a> of data. One can think of a
85+
<a class="reference external" href="https://pandas.pydata.org/docs/reference/api/pandas.Series.html#pandas.Series" title="(in pandas v2.3.3)"><code class="xref py py-class docutils literal notranslate"><span class="pre">pandas.Series</span></code></a> as a column of data with a title. This perhaps best
8686
illustrated with an example.</p>
8787
<span id="student-data"></span><table class="docutils align-default" id="id6" style="width: 70%">
8888
<caption><span class="caption-number">Table 8.1 </span><span class="caption-text">Extract from some fictional student records. The full records
@@ -147,8 +147,8 @@ <h2><span class="section-number">8.1. </span>Pandas<a class="headerlink" href="#
147147
<span class="gh">Out[6]: </span><span class="go">pandas.core.series.Series</span>
148148
</pre></div>
149149
</div>
150-
<p>Observe that the <a class="reference external" href="https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.html#pandas.DataFrame" title="(in pandas v2.3.2)"><code class="xref py py-class docutils literal notranslate"><span class="pre">DataFrame</span></code></a> acts as a dictionary of
151-
one-dimensional data <a class="reference external" href="https://pandas.pydata.org/docs/reference/api/pandas.Series.html#pandas.Series" title="(in pandas v2.3.2)"><code class="xref py py-class docutils literal notranslate"><span class="pre">Series</span></code></a>. A <a class="reference external" href="https://pandas.pydata.org/docs/reference/api/pandas.Series.html#pandas.Series" title="(in pandas v2.3.2)"><code class="xref py py-class docutils literal notranslate"><span class="pre">pandas.Series</span></code></a> can be
150+
<p>Observe that the <a class="reference external" href="https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.html#pandas.DataFrame" title="(in pandas v2.3.3)"><code class="xref py py-class docutils literal notranslate"><span class="pre">DataFrame</span></code></a> acts as a dictionary of
151+
one-dimensional data <a class="reference external" href="https://pandas.pydata.org/docs/reference/api/pandas.Series.html#pandas.Series" title="(in pandas v2.3.3)"><code class="xref py py-class docutils literal notranslate"><span class="pre">Series</span></code></a>. A <a class="reference external" href="https://pandas.pydata.org/docs/reference/api/pandas.Series.html#pandas.Series" title="(in pandas v2.3.3)"><code class="xref py py-class docutils literal notranslate"><span class="pre">pandas.Series</span></code></a> can be
152152
indexed and sliced like any other Python <a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#typesseq" title="(in Python v3.13)"><span class="xref std std-ref">sequence type</span></a>. This
153153
very high level introduction is all we’ll need to use pandas in demonstrations
154154
in this chapter. Much more documentation is available on the <a class="reference external" href="https://pandas.pydata.org/docs/">Pandas website</a>.</p>

_sources/1_introduction.rst.txt

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ tools. At various points you'll also need install several more Python packages,
6565
but you don't need to install those right now. The core tools you will need
6666
are:
6767

68-
1. Python version 3.9 or later (3.11 or later recommended).
68+
1. Python version 3.10 or later (3.13 or later recommended).
6969
2. Git (the revision control system we're going to use).
7070
3. A Python-aware text editor or :term:`integrated development
7171
environment` (IDE). Visual Studio Code is recommended, and all the
@@ -114,7 +114,7 @@ references in this book are to that version.
114114

115115
Within Python 3, there is a minor version release approximately every year.
116116
Once released, this receives security updates for 5 years. At the time of
117-
writing, Python 3.12 is the newest release version, and Python 3.9 is the
117+
writing, Python 3.14 is about to be released, and Python 3.10 is the
118118
oldest version that still receives security fixes. The user-facing differences
119119
between minor Python versions are usually fairly minimal, so for the purposes
120120
of this book it doesn't matter which of the currently supported versions of
@@ -140,26 +140,26 @@ default:
140140
141141
> py --version
142142
143-
On the author's computer, this prints `Python 3.12.6`, which is the version of
143+
On the author's computer, this prints `Python 3.13.3`, which is the version of
144144
Python I expect to be using. This means I can launch Python on Windows using
145145
just `py`. If it printed a different version, then I could attempt to force it
146146
to use the version I want like this:
147147

148148
.. code-block:: console
149149
150-
> py -3.12 --version
150+
> py -3.13 --version
151151
152152
If that fails, then there is an issue with your Python documentation and you
153153
need to go back to the start of this section to work out how to install the
154154
right version.
155155

156156
On Mac or Linux, the safest way to ensure that you are running the right
157-
version of Python is to use the full version number, e.g. `python3.12`. You can
157+
version of Python is to use the full version number, e.g. `python3.13`. You can
158158
check this with, for example:
159159

160160
.. code-block:: console
161161
162-
$ python3.12 --version
162+
$ python3.13 --version
163163
164164
If this fails, then the relevant Python version isn't (correctly) installed and
165165
you will need to use a different version, or install it.

searchindex.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)