1.要素3:组合数据类型:元组和列表
Python元组和列表可用于存储任意数量、任意类型的数据项。元组是固定的,创建之后不能改变;列表是可变的,可以插入或删除数据项
![f4a3100a0fb618fb6511a067a81089e4.png](https://i-blog.csdnimg.cn/blog_migrate/965d3081d6280f81e077648752e9eab0.jpeg)
元组用逗号创建,输出元组时,用()把内容封装起来,若元组中只有一个数据项,又需要圆括号,空元组需用空的()创建。
![a2572c5de23233702e7506444f755e13.png](https://i-blog.csdnimg.cn/blog_migrate/7bc802d72106ea5dcbfd42c2b8a3587f.jpeg)
列表用[]创建,也会有其它创建方式
![7b79a53ffc6964440a83ec7e1d0a3623.png](https://i-blog.csdnimg.cn/blog_migrate/b90493ce77b954a8e375d112c0eafb2c.jpeg)
对象引用是对象名,内存中的对象是数值。列表与元组并不真正存储数据(对象),存放的是对象引用(对象名),内存中创建适当数据类型的对象,而列表和元组中存放的是对象引用(对象名)。
![7ae2f35863a41fe6cf97e5cdd23fea03.png](https://i-blog.csdnimg.cn/blog_migrate/c9367e7fea7d2d348dd72ce7f4506d4f.jpeg)
len(数据项)函数返回参数的长度
2.要素4:逻辑操作符
身份操作符is与比较操作符==不一样,is比较的是对象所在的内存地址,查看两个对象是否指向相同的对象;而== 比较的是对象的价值。
![a680087d33b9914d15b227a14d17ef7a.png](https://i-blog.csdnimg.cn/blog_migrate/5d3275cedc4d562138476536522ecf9e.jpeg)
数值相同时 a is b 未必返回True
![585f7dacd379a59912903a34465cd8b2.png](https://i-blog.csdnimg.cn/blog_migrate/0455651daa8750f435e5380612f25256.jpeg)
Python为了优化效率,内置了小整数对象池和简单字符串对象池。
小整数对象池包括[-5, 256]。这之间的小整数数值相同时在小整数对象池中属于同一对象
即是 a is b 返回True。简单字符串也是如此,对于其他对象则不适用
比较操作符 ==、!=、、>=,比较操作符比较的就是对象的值,数值或字符串内容相同则为True,反之返回False
![89fa43909d95a386af69c4db5c6884e6.png](https://i-blog.csdnimg.cn/blog_migrate/ddf6b63b494fa668b5db7f3873513e27.jpeg)
成员操作符对序列或集合这一类数据类型,比如字符串、列表或元组,我们用操作符in来测试成员关系,用not in来测试非成员关系
![e84776bc98c8bb50750bfc5978542106.png](https://i-blog.csdnimg.cn/blog_migrate/155954f9f1bf928a67f34050f4a4c9fa.jpeg)
逻辑运算符:and、or、not
Python 逻辑运算符可以用来操作任何类型的表达式,不管表达式是不是 bool 类型;同时,逻辑运算的结果也不一定是 bool 类型,它也可以是任意类型。
逻辑运算符and,x and y, 若x为True,返回y的值;若x为False,返回x的值
逻辑运算符or,x or y, 若x为True,返回x的值;若x为False,返回y的值
![75b25e47281c94b8a3897945fff8e338.png](https://i-blog.csdnimg.cn/blog_migrate/37e5e6c21dc8ebedc571df41478aed27.jpeg)
用到布尔类型True,False时一定首字母大写
![71426499c5b0fb6bfb1a6bb4ca7eb209.png](https://i-blog.csdnimg.cn/blog_migrate/394b7d7189acd1697725273f15c9c44d.jpeg)
为什么多了一个None,这是因为print(url)这个函数有一个默认返回值,return None
3.要素5:控制流语句
4.要素6:算术操作符:+、-、*、/、+=、*=
![ae174307fd1a893cca129068c5ffa4a0.png](https://i-blog.csdnimg.cn/blog_migrate/8a7049704f8ad204332244ad4facf329.jpeg)
除法操作符会产生一个浮点值,而不是一个整数值
操作符+与+=,将其分别用于字符串与列表,前者表示连接,原对象本身未发生改变;后者表示追加字符串并扩展(追加另一个字符串),原对象本身发生改变
![c7a77443d7991fcb1ca4229c2a3710df.png](https://i-blog.csdnimg.cn/blog_migrate/499653fc65eea690b4c2ed0df6ac75cb.jpeg)
由于列表是可变的,使用+=后,原始的列表对象会被修改,因此,没有必要对seeds进行重新绑定。
![029057e6abb7fdc0ad93542d0e7e958f.png](https://i-blog.csdnimg.cn/blog_migrate/a087d81444b78f94230a751a383b7752.jpeg)