廖雪峰python教程
list 列表
a[ ]
定义:可随时添加和删除元素的有序集合,其中元素
用索引来访问列表中的元素:索引从左到右0开始,从右到左从-1开始,访问时索引不能超过列表范围。
追加新元素至列表末尾:classmates.append()
替换元素:找到需要换元素的索引,对其赋值。
删除元素:pop()删除列表末尾元素;pop(i)删除指定位置元素,i代表需删除元素索引。
tuple 元组 指向不可更改的列表
a( )
若其中有list 列表,list内元素可以更改,但对list指向不可更改。
特殊情况,为了消除歧义,只有一个元素的元组,需要加一个逗号。
练习
请用索引取出下面list的指定元素:Apple、Python、Lisa:
L = [
['Apple', 'Google', 'Microsoft'],
['Java', 'Python', 'Ruby', 'PHP'],
['Adam', 'Bart', 'Lisa']
]
代码
print(L[0][0])
print(L[1][1])
print(L[-1][-1])
条件判断
if、else、elif的语句判断模式:
从上往下,条件判断正确,则执行当下结果,并略去后续条件判断。
否则,执行下一项条件判断。
注意不要忘记冒号
练习
小明身高1.75,体重80.5kg。请根据BMI公式(体重除以身高的平方)帮小明计算他的BMI指数,并根据BMI指数:
低于18.5:过轻
18.5-25:正常
25-28:过重
28-32:肥胖
高于32:严重肥胖
代码
height = 1.75
weight = 80.5
bmi = weight/height/height
if bmi < 18.5 :
print('过轻')
elif 18.5 < bmi < 25 :
print('正常')
elif 25 < bmi < 28 :
print('过重')
elif 28 < bmi < 32:
print('肥胖')
elif bmi > 32 :
print('严重肥胖')
结果
过重
循环
两种循环:
for x in v:依次将list或tuple中的元素迭代、调用出来,可以理解为,将v中的每一个元素,依次带入x,然后执行缩进的语句。
while 循环:只要条件满足,就一直循环。
range( ):可生成整数数列,然后再通过list()转换为列表
两种结束
break: 提前结束整个循环
continue:跳过本次循环,直接进入下一个循环
遇到死循环,用Ctrl+C,强行结束,或强行停止python
字典 dict {}
dictionary,python内置,其他语言中称为map。
key-vaule存储方式。通过索引-key,精准定位数据-vaule所在位置。
- 删除 :
d.pop( )
字典-dict和列表-list的区别
字典不论元素多寡,查找速度都很快;而列表,随着元素增加,查找速度会减慢。原因:字典占据大量内存,以空间换时间;列表占据少量内存,以时间换空间。
为避免混乱,字典dict的key不可变,不能用list,而可以用不可变的整数int或字符串string
set
和list类似,key的集合,但不存储vaule。
元素无序,且不重复,因此可以看作数学意义上无序和无重复元素的集合。
- 创建方式
提供一个list作为输入集合:
s = ([1,2,3])
s
{1,2,3}
增减元素
add()
remove()
- 不可在set中置入可变对象,因set中元素不可重复,无法判断可变对象是否相同