- Notifications
You must be signed in to change notification settings - Fork 54
/
Copy pathSiteFormatting.html
213 lines (190 loc) · 13.4 KB
/
SiteFormatting.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
<!DOCTYPE html>
<htmlclass="writer-html5" lang="en" >
<head>
<metacharset="utf-8" /><metacontent="Topic: Overview of formatting in Python Like You Mean It, Difficulty: Easy, Category: Instructions" name="description" />
<metacontent="overview, formatting, background, code block, console style" name="keywords" />
<metaname="viewport" content="width=device-width, initial-scale=1.0" />
<title>A Quick Guide to Formatting — Python Like You Mean It</title>
<linkrel="stylesheet" href="../_static/pygments.css" type="text/css" />
<linkrel="stylesheet" href="../_static/css/theme.css" type="text/css" />
<linkrel="stylesheet" href="../_static/my_theme.css" type="text/css" />
<!--[if lt IE 9]>
<script src="../_static/js/html5shiv.min.js"></script>
<![endif]-->
<scriptdata-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script>
<scriptsrc="../_static/jquery.js"></script>
<scriptsrc="../_static/underscore.js"></script>
<scriptsrc="../_static/doctools.js"></script>
<scriptasync="async" src="https://www.googletagmanager.com/gtag/js?id=UA-115029372-1"></script>
<scriptsrc="../_static/gtag.js"></script>
<scriptcrossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script>
<script>window.MathJax={"tex": {"inlineMath": [["$","$"],["\\(","\\)"]],"processEscapes": true},"options": {"ignoreHtmlClass": "tex2jax_ignore|mathjax_ignore|document","processHtmlClass": "tex2jax_process|mathjax_process|math|output_area"}}</script>
<scriptdefer="defer" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script>
<scriptsrc="../_static/js/theme.js"></script>
<linkrel="index" title="Index" href="../genindex.html" />
<linkrel="search" title="Search" href="../search.html" />
<linkrel="next" title="Introducing the Python Programming Language" href="GettingStartedWithPython.html" />
<linkrel="prev" title="Module 1: Getting Started with Python" href="../module_1.html" />
</head>
<bodyclass="wy-body-for-nav">
<divclass="wy-grid-for-nav">
<navdata-toggle="wy-nav-shift" class="wy-nav-side">
<divclass="wy-side-scroll">
<divclass="wy-side-nav-search" >
<ahref="../index.html" class="icon icon-home"> Python Like You Mean It
</a>
<divclass="version">
1.4
</div>
<divrole="search">
<formid="rtd-search-form" class="wy-form" action="../search.html" method="get">
<inputtype="text" name="q" placeholder="Search docs" />
<inputtype="hidden" name="check_keywords" value="yes" />
<inputtype="hidden" name="area" value="default" />
</form>
</div>
</div><divclass="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu">
<pclass="caption" role="heading"><spanclass="caption-text">Table of Contents:</span></p>
<ulclass="current">
<liclass="toctree-l1"><aclass="reference internal" href="../intro.html">Python Like You Mean It</a></li>
<liclass="toctree-l1 current"><aclass="reference internal" href="../module_1.html">Module 1: Getting Started with Python</a><ulclass="current">
<liclass="toctree-l2 current"><aclass="current reference internal" href="#">A Quick Guide to Formatting</a><ul>
<liclass="toctree-l3"><aclass="reference internal" href="#Running-Code-Snippets-from-this-Site">Running Code Snippets from this Site</a></li>
</ul>
</li>
<liclass="toctree-l2"><aclass="reference internal" href="GettingStartedWithPython.html">Introducing the Python Programming Language</a></li>
<liclass="toctree-l2"><aclass="reference internal" href="Installing_Python.html">Installing Python</a></li>
<liclass="toctree-l2"><aclass="reference internal" href="Informal_Intro_Python.html">An Informal Introduction to Python</a></li>
<liclass="toctree-l2"><aclass="reference internal" href="Jupyter_Notebooks.html">Jupyter Notebooks</a></li>
<liclass="toctree-l2"><aclass="reference internal" href="Getting_Started_With_IDEs_and_Notebooks.html">Setting Up a Development Environment</a></li>
</ul>
</li>
<liclass="toctree-l1"><aclass="reference internal" href="../module_2.html">Module 2: The Essentials of Python</a></li>
<liclass="toctree-l1"><aclass="reference internal" href="../module_2_problems.html">Module 2: Problems</a></li>
<liclass="toctree-l1"><aclass="reference internal" href="../module_3.html">Module 3: The Essentials of NumPy</a></li>
<liclass="toctree-l1"><aclass="reference internal" href="../module_3_problems.html">Module 3: Problems</a></li>
<liclass="toctree-l1"><aclass="reference internal" href="../module_4.html">Module 4: Object Oriented Programming</a></li>
<liclass="toctree-l1"><aclass="reference internal" href="../module_5.html">Module 5: Odds and Ends</a></li>
<liclass="toctree-l1"><aclass="reference internal" href="../changes.html">Changelog</a></li>
</ul>
</div>
</div>
</nav>
<sectiondata-toggle="wy-nav-shift" class="wy-nav-content-wrap"><navclass="wy-nav-top" aria-label="Mobile navigation menu" >
<idata-toggle="wy-nav-top" class="fa fa-bars"></i>
<ahref="../index.html">Python Like You Mean It</a>
</nav>
<divclass="wy-nav-content">
<divclass="rst-content">
<divrole="navigation" aria-label="Page navigation">
<ulclass="wy-breadcrumbs">
<li><ahref="../index.html" class="icon icon-home"></a> »</li>
<li><ahref="../module_1.html">Module 1: Getting Started with Python</a> »</li>
<li>A Quick Guide to Formatting</li>
<liclass="wy-breadcrumbs-aside">
<ahref="../_sources/Module1_GettingStartedWithPython/SiteFormatting.md.txt" rel="nofollow"> View page source</a>
</li>
</ul>
<hr/>
</div>
<divrole="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
<divitemprop="articleBody">
<style>
/* CSS overrides for sphinx_rtd_theme */
/* 24px margin */
.nbinput.nblast.container,
.nboutput.nblast.container {
margin-bottom:19px; /* padding has already 5px */
}
/* ... except between code cells! */
.nblast.container+ .nbinput.container {
margin-top:-19px;
}
.admonition>p:before {
margin-right:4px; /* make room for the exclamation icon */
}
/* Fix math alignment, see https://github.com/rtfd/sphinx_rtd_theme/pull/686 */
.math {
text-align: unset;
}
</style>
<divclass="section" id="A-Quick-Guide-to-Formatting">
<h1>A Quick Guide to Formatting<aclass="headerlink" href="#A-Quick-Guide-to-Formatting" title="Permalink to this headline"></a></h1>
<p>This section provides a brief overview of the code formatting style that will be used throughout this text. You are not expected to understand the details of the code, here. This merely provides a guide for what is to come.</p>
<p>Any code that is included in-line within plain text will be formatted distinctly as so: “the variable <codeclass="docutils literal notranslate"><spanclass="pre">x</span></code> was updated…”. Such items will be distinguished with backticks wherever such formatting is not available. Take for example the following commented line within Python code:</p>
<divclass="highlight-python notranslate"><divclass="highlight"><pre><span></span><spanclass="c1"># the variable `x` will be updated</span>
</pre></div>
</div>
<p>Python code will be displayed within distinct, colorized code blocks. These will typically begin with a comment, which is meant to serve as a caption that summarizes the purpose of the code block:</p>
<divclass="highlight-python notranslate"><divclass="highlight"><pre><span></span><spanclass="c1"># demonstrating a basic for-loop</span>
<spanclass="n">cnt</span><spanclass="o">=</span><spanclass="mi">0</span>
<spanclass="k">for</span><spanclass="n">i</span><spanclass="ow">in</span><spanclass="nb">range</span><spanclass="p">(</span><spanclass="mi">10</span><spanclass="p">):</span>
<spanclass="n">cnt</span><spanclass="o">+=</span><spanclass="mi">1</span>
<spanclass="c1">#`cnt` is now 10</span>
</pre></div>
</div>
<p>The symbol <codeclass="docutils literal notranslate"><spanclass="pre">>>></span></code> appears within code blocks to indicate “console-style” code, which distinguishes between code being entered by a user and the resulting output. The purpose of this is that it allows us to easily display the result of a computation without having to rely on calling the <codeclass="docutils literal notranslate"><spanclass="pre">print</span></code> function. For instance, the following code assigns the integer <codeclass="docutils literal notranslate"><spanclass="pre">1</span></code> to the variable <codeclass="docutils literal notranslate"><spanclass="pre">x</span></code>, and then displays the result of <codeclass="docutils literal notranslate"><spanclass="pre">x</span><spanclass="pre">+</span><spanclass="pre">2</span></code>:</p>
<divclass="highlight-python notranslate"><divclass="highlight"><pre><span></span><spanclass="c1"># demonstrating the distinction of</span>
<spanclass="c1"># input and output via >>></span>
<spanclass="o">>>></span><spanclass="n">x</span><spanclass="o">=</span><spanclass="mi">1</span>
<spanclass="o">>>></span><spanclass="n">x</span><spanclass="o">+</span><spanclass="mi">2</span>
<spanclass="mi">3</span>
</pre></div>
</div>
<p>The code blocks throughout a given section of the text should be understood to be persistent even if there is a mix of “pure” code blocks and “console-style” code blocks. For example, a function may be defined at the beginning of a section, and then referenced throughout the rest of that section:</p>
<divclass="highlight-python notranslate"><divclass="highlight"><pre><span></span><spanclass="c1"># defining an example function</span>
<spanclass="k">def</span><spanclass="nf">my_func</span><spanclass="p">(</span><spanclass="n">x</span><spanclass="p">):</span>
<spanclass="k">return</span><spanclass="n">x</span><spanclass="o">**</span><spanclass="mi">2</span>
</pre></div>
</div>
<p>We can spend some time talking about <codeclass="docutils literal notranslate"><spanclass="pre">my_func</span></code> and then see it in action:</p>
<divclass="highlight-python notranslate"><divclass="highlight"><pre><span></span><spanclass="c1"># demonstrating `my_func`</span>
<spanclass="o">>>></span><spanclass="n">my_func</span><spanclass="p">(</span><spanclass="mf">10.</span><spanclass="p">)</span>
<spanclass="mf">100.</span>
</pre></div>
</div>
<p>Lastly, the input and output of an iPython console and a Jupyter notebook alike is displayed as follows:</p>
<divclass="highlight-python notranslate"><divclass="highlight"><pre><span></span><spanclass="mi">2</span><spanclass="o">+</span><spanclass="mi">3</span>
</pre></div>
</div>
<divclass="section" id="Running-Code-Snippets-from-this-Site">
<h2>Running Code Snippets from this Site<aclass="headerlink" href="#Running-Code-Snippets-from-this-Site" title="Permalink to this headline"></a></h2>
<p>In PLYMI, we typically precede every code snippet with one or more commented lines. This is useful because it makes a page more “skimmable”, since the code snippets essentially come with descriptive, self-explanatory captions. That being said, there is a downside to this.</p>
<p>Python terminals don’t like having multiple comment lines precede an input-prompt. E.g. if you paste and run the following code into a terminal</p>
<divclass="highlight-python notranslate"><divclass="highlight"><pre><span></span><spanclass="c1"># demonstrating the distinction of</span>
<spanclass="c1"># input and output via >>></span>
<spanclass="o">>>></span><spanclass="n">x</span><spanclass="o">=</span><spanclass="mi">1</span>
</pre></div>
</div>
<p>you will get a syntax error. To fix this issue, simply exclude the comments when you copy this block to your clipboard. Running</p>
<divclass="highlight-python notranslate"><divclass="highlight"><pre><span></span><spanclass="gp">>>> </span><spanclass="n">x</span><spanclass="o">=</span><spanclass="mi">1</span>
</pre></div>
</div>
<p>will work without any issue. Keep this in mind if you ever find yourself having trouble running code that you copied from this site.</p>
</div>
</div>
</div>
</div>
<footer><divclass="rst-footer-buttons" role="navigation" aria-label="Footer">
<ahref="../module_1.html" class="btn btn-neutral float-left" title="Module 1: Getting Started with Python" accesskey="p" rel="prev"><spanclass="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
<ahref="GettingStartedWithPython.html" class="btn btn-neutral float-right" title="Introducing the Python Programming Language" accesskey="n" rel="next">Next <spanclass="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
</div>
<hr/>
<divrole="contentinfo">
<p>© Copyright 2021, Ryan Soklaski.</p>
</div>
Built with <ahref="https://www.sphinx-doc.org/">Sphinx</a> using a
<ahref="https://github.com/readthedocs/sphinx_rtd_theme">theme</a>
provided by <ahref="https://readthedocs.org">Read the Docs</a>.
</footer>
</div>
</div>
</section>
</div>
<script>
jQuery(function(){
SphinxRtdTheme.Navigation.enable(true);
});
</script>
</body>
</html>