跟着廖雪峰学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的缩写,完全可以有多个elifage = 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解释器把 ...
随机推荐
- springboot项目整合-注册功能模块开发
工程简介 准备工作:项目所用到的html界面以及sql文件链接如下:链接: https://pan.baidu.com/s/18loHJiKRC6FI6XkoANMSJg?pwd=nkz2 提取码: ...
- 【OpenStack云平台】安装Centos操作系统
视频教程:https://live.csdn.net/v/236820 1.环境准备 准备实验所需要的环境,需要安装VMware Workstation.使用的系统镜像为CentOS-7.5-x86_ ...
- 森林野火故事2.0:一眼看穿!使用 Panel 和 hvPlot 可视化 ⛵
作者:韩信子@ShowMeAI 数据分析实战系列:https://www.showmeai.tech/tutorials/40 本文地址:https://www.showmeai.tech/artic ...
- (工具) 性能测试基准软件 lmBench (待补充)
1. lmBench 介绍 Lmbench是一套简易,可移植的,符合ANSI/C标准为UNIX/POSIX而制定的微型测评工具.一般来说,它衡量两个关键特征:反应时间和带宽.Lmbench旨在使系统开 ...
- EntityUtils MapStruct BeanCopier 数据实体类转换工具 DO BO VO DTO 附视频
一.序言 在实际项目开发过程中,总有数据实体类互相转换的需求,DO.BO.VO.DTO等数据模型转换经常发生.今天推荐几个好用的实体类转换工具,分别是EntityUtils MapStruct Bea ...
- .net core/5/6/7中WPF如何优雅的开始开发
WPF是微软的.net平台中的一个桌面客户端应用程序框架,经常用于企业开发windows桌面客户端,广泛应用于中小企业快速开发一款工具,本人也是比较喜欢利用WPF开发一些小工具. 目录 知名案例 .n ...
- uniCloud云开发入门以及对传统开发方式的思考
事情缘由 作为选修了移动互联网应用的一员,老师讲的什么JS基础,还有ES6和uniapp,当然是没怎么听,因为是之前大二的时候都大概看过. 但是快到期末,老师讲了云开发,并且布置了与此相关的大作业,自 ...
- table 动态隐藏tr行
table: <table style="width:100%" class="table01" cellspacing="1" ce ...
- C语言条件语句中调用函数并赋值时的一个小坑
在C语言中,如果在条件语句中赋值,一定要注意符号优先级的问题,比较符号是比赋值符号先执行的.如果同时还调用函数,并将返回值赋给变量,更容易产生错误. 看下面的代码: int increase(int ...
- [数学建模]主成分分析法PCA
最常用的线性降维方法,通过某种线性投影,将高维的数据映射到低维的空间中,并期望在所投影的维度上数据的信息量最大(方差最大),以此使用较少的数据维度,同时保留住较多的原数据点的特性. Q1:为何选取方差 ...









