跟着廖雪峰学python 003
编辑
列表和元组
list 是一种有序、可变的数据类型,可添加删除其中的元素。
len()函数:可以获取列表元素的个数
classmates = ['Micheal' , 'Bob' , 'James']
print(classmates)
print(len(classmates))Terminal: 编辑
用索引来读取列表里的元素,从0开始,最后一个可以用-1或len(classmates)-1表示
classmates = ['Micheal' , 'Bob' , 'James']
print(classmates[0])
print(classmates[-1])
print(classmates[len(classmates)-1])Terminal: 编辑
倒数第二位可以用-2表示,以此类推。索引超出范围会报错
append()函数:列表末尾加元素
insert()函数:在列表指定位置添加元素
pop()函数:删除列表指定位置元素,括号空默认删除最后一个元素
classmates = ['Micheal' , 'Bob' , 'James']
print(classmates)
classmates.append('Lebron')
print(classmates)
classmates.insert(1,'Jordan')
print(classmates)
classmates.pop()
print(classmates)
classmates.pop(1)
print(classmates)Terminal: 编辑
列表中的某个元素换成其他,可以直接赋值给对应的索引位置
classmates = ['Micheal' , 'Bob' , 'James']
classmates[1]='Jordan'
print(classmates)Terminal: 编辑
列表中的元素数据类型可以不同,列表也可以作为另一个列表的元素
L = ['Apple', 123, True]
S=['php','html']
L.insert(1,S)
print(L)
print(len(L))
print(L[1][0])Terminal: 编辑
tuple:元组,是一种有序列表
tuple和list相似,但是tuple一旦初始化就不可以修改,也不可以使用上面的添加、删除函数,但可以通过索引地址正常读取
classmates = ('Michael', 'Bob', 'Tracy')
print(classmates[0])
print(classmates[-1])Terminal: 编辑
因为tuple不可变,所以代码更安全。如果可能,能用tuple代替list就尽量用tuple
tuple的陷阱:当你定义一个tuple时,在定义的时候,tuple的元素就必须被确定下来
定义一个空的tuple 写成:t = ()
定义一个元素的tuple 写成:t = (1) ×
这样定义的不是tuple,是
1
这个数!这是因为括号()
既可以表示tuple,又可以表示数学公式中的小括号,这就产生了歧义,因此,Python规定,这种情况下,按小括号进行计算,计算结果自然是1
。所以,只有1个元素的tuple定义时必须加一个逗号
,
,来消除歧义:如: t = (1, )
Python在显示只有1个元素的tuple时,也会加一个逗号,以免你误解成数学计算意义上的括号。
当tuple中的一个元素是列表时,可以改变列表里的元素
t = ('a', 'b', ['A', 'B'])
t[2][0] = 'X'
t[2][1] = 'Y'
print(t)
Terminal: 编辑
tuple的不变指的是元素指向永远不变,上面指向的列表一直都是相同的列表,改变的是列表里的元素。
条件判断
age = 3
if age >= 18:
print('your age is', age)
print('adult')
else:
print('your age is', age)
print('teenager')Terminal: 编辑
elif
是else if
的缩写,完全可以有多个elif
age = 3
if age >= 18:
print('adult')
elif age >= 6:
print('teenager')
else:
print('kid')Terminal: 编辑
if x:
print('True')只要
x
是非零数值、非空字符串、非空list等,就判断为True
,否则为False
编辑
跟着廖雪峰学python 003的更多相关文章
- 跟着老王学Python
亲爱的朋友: 欢迎你!很高兴能在这里见到你,你能来到这里说明你真的很喜欢python,很想把python给学好!我觉的你很幸运,开始我学python的时候比较少资料,学起来也比较头疼,现在随着 ...
- 廖雪峰老师Python教程读后笔记
廖老师网站:http://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000 花几天时间看了廖老师的 ...
- 跟着高淇学Python——第一到第三章总结
2019/10/26 第一章:Python介绍 Python是一种解释型,面向对象的语言.特点是: 可读性强 简洁,简洁 面向对象 免费开源 可移植性和跨平台性 丰富的库 可扩展性 应用范围:1.人工 ...
- 进程 vs. 线程(python的协程)(转廖雪峰老师python教程)
我们介绍了多进程和多线程,这是实现多任务最常用的两种方式.现在,我们来讨论一下这两种方式的优缺点. 首先,要实现多任务,通常我们会设计Master-Worker模式,Master负责分配任务,Work ...
- python 协程(单线程中的异步调用)(转廖雪峰老师python教程)
协程,又称微线程,纤程.英文名Coroutine. 协程的概念很早就提出来了,但直到最近几年才在某些语言(如Lua)中得到广泛应用. 子程序,或者称为函数,在所有语言中都是层级调用,比如A调用B,B在 ...
- 【廖雪峰老师python教程】——进程与线程
多进程 操作系统轮流让各个任务交替执行,任务1执行0.01秒,切换到任务2,任务2执行0.01秒,再切换到任务3,执行0.01秒……这样反复执行下去.表面上看,每个任务都是交替执行的,但是,由于CPU ...
- 【廖雪峰老师python教程】——IO编程
同步IO 异步IO 最常见的IO——读写文件 读写文件前,我们先必须了解一下,在磁盘上读写文件的功能都是由操作系统提供的,现代操作系统不允许普通的程序直接操作磁盘,所以,读写文件就是请求操作系统打开一 ...
- 【廖雪峰老师python教程】——错误和调试
错误处理 try...except...finally...机制 try: print('try...') r = 10 / 0 print('result:', r) except ZeroDivi ...
- 【廖雪峰老师python教程】——OOP
概述 面向对象编程——Object Oriented Programming,简称OOP,是一种程序设计思想.OOP把对象作为程序的基本单元,一个对象包含了数据和操作数据的函数. 数据封装.继承和多态 ...
- 【廖雪峰老师python教程】——模块
使用模块 任何模块代码的第一个字符串都被视为模块的文档注释: 使用__author__变量把作者写进去,这样当你公开源代码后别人就可以瞻仰你的大名: 当我们在命令行运行模块文件时,Python解释器把 ...
随机推荐
- day12-Servlet02
Servlet02 6.GET和POST请求的分发处理 开发Servlet,通常编写doGet,doPost方法.来对表单的get和post请求进行分发处理 例子 在web文件夹下面创建一个html页 ...
- Codeforces Round #817 (Div. 4)
CF传送门 因为洛谷题库未更新,所以给出的题面都是CF的. 现场打真是太卡了(梯子挂了,codeforc.es也崩了),所以五六分钟才打开题目 \(qwq\) A. Spell Check 萌萌题,把 ...
- 图文详解在VMware Workstation 16 PRO虚拟机上安装Rocky 8.6 linux系统
一.安装VMware Workstation虚拟机 下载VMware Workstation 16 PRO虚拟机 https://www.vmware.com/cn/products/workstat ...
- linux系统安装nginx中的subs-filter模块
debain系 nginx源里面一般都包含 nginx的第三方模块 所以对应已经安装了nginx 的系统可以直接安装第三方模块 sudo apt install libnginx-mod-http-s ...
- 关于linux上strongswan客户端的配置
前言 这几天回家了,想连学校的vpn, 学校vpn用的是strongswan的EAP认证(不需要证书什么的),手机上直接用软件连接就可以了,windows也是内置了这个协议,无奈我用的是linux m ...
- 关于在linux测试启动盘命令(qemu的使用)
前言 在平时使用电脑的过程中,难免有更换系统或维护系统的需求,这个时候就需要一个启动盘来进行帮忙了,但启动盘制作是否成功没次都重启电脑是十分浪费时间的 在windows中,制作过pe盘,或者其他的系统 ...
- 如何使用C#在Excel中插入分页符
在日常办公中,我们经常会用到Excel文档来帮助我们整理数据.为了方便打印Excel工作表,我们可以在Excel中插入分页符.各种处理软件一般都会自动按照用户所设置页面的大小自动进行分页,以美化文档的 ...
- ArcObjects SDK开发 008 从mxd地图文件说起
1.Mxd文件介绍 ArcGIS的地图文件为.mxd扩展名.Mxd文件的是有版本的,和ArcGIS的版本对应.可以在ArcMap中的File-Save A Copy,保存一个地图拷贝的时候选择Mxd文 ...
- ChatGPT 可以联网了!浏览器插件下载
Twitter 用户 An Qu 开发了一款新的 Chrome 插件帮助 ChatGPT 上网,安装插件以后 ChatGPT 就可以联!网!了! 简单来说开启插件后,他可以从网上搜索信息,并且根据用户 ...
- Hexo+Gitee免费搭建静态博客
前言 这是一篇利用 Gitte Pages + hexo 搭建属于自己博客的教程,也是自己这个博客搭建好以后的第一篇文章,搭建的过程中也参考了各路大佬的文章,期间遇到了一些问题,所以写这一篇文章即是记 ...