Python基础 - 数据结构(元组)

2022/6/17 13:18:11admin0 阅读0 评论

<h2>数据结构</h2>
<p>之前学习的变量可以存储1个数据,当我需要存储10个数据的时候怎么办呢?
写10个变量可以解决这个问题,但是太冗长。</p>
<p>也可以如图所示,用这样一个变量来存储10个数据。
在Python中,有几种内置的“容器”,可以按不同的方式存储多个数据的集合。</p>
<p>这样的“容器”,称之为“数据结构”。 </p>
<img src=“https://assets.moshanghua.net/images/2022/06/msh-2517-01.png” alt=“” />
<p>数据结构是计算机存储和组织数据的方式。</p>
<p>数据结构有很多种,其中使用最多的,是元组(tuple)、列表(list)、字典(dict)这三种。</p>
<img src=“https://assets.moshanghua.net/images/2022/06/msh-2517-02.png” alt=“” />
<h2>储存多个数据的元组</h2>
<p>假设我们想要存储日期的数据,将“1月1日”,“1月2日”,“1月3日”,“1月4日”存储在一起,这时就可以使用元组(tuple)。</p>
<p>元组,是一种由多个数据组成的有序数据集合。它就像一排抽屉,我们可以在抽屉里面放不同的东西。</p>
<p>“1月1日”,“1月2日”,“1月3日”,“1月4日”使用元组存储在一起,可以写成如图的样子。</p>
<img src=“https://assets.moshanghua.net/images/2022/06/msh-2517-03.png” alt=“” />
<p>来具体学习元组的代码写法。</p>
<pre class=“language-python line-numbers”><code class=“language-python”>
calendar = (“1月1日”, “1月2日”, “1月3日”, “1月4日”)
print(calendar)
</code></pre>
<p>代码的作用
这2行代码定义了一个calendar的元组,然后打印了这个元组。</p>
<p>第1行给一个元组赋值了"1月1日", "1月2日", "1月3日", "1月4日"这四个日期;</p>
<p>第2行打印了calendar这整个元组。</p>
<p><strong>( )</strong>
一个括号,是定义元组的固定格式。</p>
<img src=“https://assets.moshanghua.net/images/2022/06/msh-2517-04.png” alt=“” />
<p><strong>元组的变量名</strong>
这串字母calendar是元组的变量名。</p>
<img src=“https://assets.moshanghua.net/images/2022/06/msh-2517-05.png” alt=“” />
<p><strong>四个字符串</strong>
四个字符串,这里的四个字符串数据是元组包含的四个元素。</p>
<img src=“https://assets.moshanghua.net/images/2022/06/msh-2517-06.png” alt=“” />
<p><strong> ,</strong>
三个逗号,逗号是用来分隔元组里面各个元素的固定符号。
逗号右边的空格可有可无,这里添加空格是为了代码风格考虑。</p>
<img src=“https://assets.moshanghua.net/images/2022/06/msh-2517-07.png” alt=“” />
<p><strong>代码小结</strong>
当我们想要使用元组的时候,可以使用这样的格式</p>
<img src=“https://assets.moshanghua.net/images/2022/06/msh-2517-08.png” alt=“” />
<p>元组里可以存储各种各样的数据类型,一个元组可以完全由整型、浮点型、字符串、布尔数构成。
也可以由这几种数据类型的常量混合组成。</p>
<img src=“https://assets.moshanghua.net/images/2022/06/msh-2517-09.png” alt=“” />
<p>元组中的数据是有顺序的。也就是说,如图在calendar这个元组里面,排在第一位的是"1月1日",第二位是"1月2日",第三位的是"1月3日"。第四位的是"1月4日"。</p>
<p>当我们输出calendar[0]的时候,就得到了这个元组的第一个数据。像这样访问它内部数据的机制,叫做“索引”。</p>
<img src=“https://assets.moshanghua.net/images/2022/06/msh-2517-10.png” alt=“” />
<h3>索引</h3>
<p>索引是在数据结构中用来定位和寻找数据的检索方式。 </p>
<p>可以通俗理解为索引是数据的位置。
索引都是从0开始的。因此,第一个数据的索引为0,第二个数据的索引为1,以此类推。</p>
<img src=“https://assets.moshanghua.net/images/2022/06/msh-2517-11.png” alt=“” />
<p>可以通过<strong>中括号[]和索引</strong>的方式,直接访问到某一个位置的元素。
如图,通过索引,直接输出了第一个元素和第二个元素。</p>
<img src=“https://assets.moshanghua.net/images/2022/06/msh-2517-12.png” alt=“” />
<p>倘若一个元组的元素非常多,我们想要寻找某一个数据,是不是在元组中,用肉眼看的方式非常麻烦。
元组这样的数据结构,有一种运算方式,叫in运算符,可以进行快速判断。</p>
<h3>in运算 </h3>
<pre class=“language-python line-numbers”><code class=“language-python”>
numbers = (0,1,2,3,5,8,13,21,34,55,89,144,233,377)
result = 5 in numbers
print(result)
</code></pre>
<p>代码的作用
这3行操作,判断了5是否是元组中的一个元素。
第1行,定义了一个元组numbers。
第2行,进行一次in运算,判断5是否是元组numbers中的一个元素,将运算结果赋值给result
第3行,输出运算结果是True</p>
<p><strong>常量</strong>
判断这个数据,是否是元组中的一个元素。</p>
<img src=“https://assets.moshanghua.net/images/2022/06/msh-2517-13.png” alt=“” />
<p><strong>元组</strong>
需要判断的5,是否是这个元组中的一个元素。</p>
<img src=“https://assets.moshanghua.net/images/2022/06/msh-2517-14.png” alt=“” />
<p><strong>in运算符</strong>
in运算,进行5 是否是 numbers 中的元素的运算。</p>
<img src=“https://assets.moshanghua.net/images/2022/06/msh-2517-15.png” alt=“” />
<p><strong>result</strong>
将in运算后的结果赋值给变量result,然后进行输出。</p>
<p>in运算的结果,是一个布尔值(True/False)。</p>
<img src=“https://assets.moshanghua.net/images/2022/06/msh-2517-16.png” alt=“” />
<p><strong>代码小结</strong>
当我们要输出一段完整文字就需要这几个部分</p>
<img src=“https://assets.moshanghua.net/images/2022/06/msh-2517-17.png” alt=“” />