Python学习笔记(三)

一、for循环
例:
for i in ‘python’:
print(i)

i代表接收到字符串’python’遍历出来的每一个元素
字符串’python’也称为可迭代对象,意思是通过循环依次遍历
遍历一次循环一次
循环的次数来自于字符串的长度,由可迭代对象的长度决定
for循环是计数循环
字符串是可迭代对象

可迭代对象包括:列表(list)、字符串(str)、元组(tuple)
查看是否是可迭代对象的方法是用dir()查找,如果是可迭代对象,则输出里面会有’iter

例:
for i in range(10):
print(i)

range(结束值)
range里面是循环的结束值

如果range(10),代表0-9,默认从0开始
依次打印0-9

range(开始值,结束值)
range(10)也可以写成区间的形式,如range(0,10)
区间形式:[0,10)

range(开始值,结束值,步长)
如range(0,10,2)
其中2为步长,代表每走两步打印一次数值
步长没有限制

注:range()里面只能传入整数

continue和break也能在for循环里面使用,原理和用法与在while里面使用相同

else也可以和for循环一起使用

二、列表推导表达式
作用:快速生成列表
例:
li = [] #定义空列表
for i in range(10):
li.append(i) #append()表示追加
print(li)
输出:[0,1,2,3,4,5,6,7,8,9]

也可写为:
li = [i for i in range(10)]
上面的形式为列表推倒表达式

也可添加if语句
例:
li = [i for i in range(10) if i % 2 == 0]
print(li)
输出:[0,2,4,6,8]

如果需要加入if,else语句可以写为
例:
li = [i*100 if i % 2 == 0 else i * 10 for i in range(10) ]
print(li)
输出:[0,10,200,30,400,50,600,70,800,90]

三、列表 list
列表里面几乎可以放python的任何对象
索引(下标)取值,索引值不能超出列表长度(最大索引值)
索引值也可以为负值
负索引从列表尾部开始往前数,负索引从-1开始,但是负值不能超过列表长度

len()方法可以查看列表长度
用法:len(列表名)

列表切片:
li[开始值:结束值]
区间:[开始值,结束值)

列表切片步长:
li[开始值:结束值:步长]

当从左往右切的时候,步长为正数
当从右往左切的时候,步长为负数
切片超出范围的话,就取到最后一个值
切片右边不写范围的话,默认切到最后一个
切片左右都不写范围的话,从头切到尾(li[:])

列表的增删改查:
1、查找
例:
li = [i for i in ‘abcdefg’]
index()方法:根据列表里面的元素查找对应的索引值(下标)

2、增加
append()方法:在列表最后面追加元素
例:li.append(1)
在列表最后面追加一个数字1

insert()方法:在指定位置添加元素
例:li.insert(2:123)
在下标2的位置追加数字123

extend()方法:批量添加元素,添加到列表的最后面
例:li.extend([‘q’,‘w’,‘e’])
里面的元素自动遍历之后逐个添加进列表

3、删除
pop()方法:默认删除最后一个元素
如果括号里不加东西,默认删除最后一个元素
如果要根据下标删除元素则在括号里加入下标值
例:
li.pop(2)
删除列中对应下标2的元素

remove()方法:根据元素名称删除元素
例:
li.remove(‘a’)
删除列表中字符’a’

del:批量删除
例:
del li[1:3]
利用切片方式批量删除列表中的元素

clear()方法:清空列表中的元素
例:
li.clear()
此时列表为空

4、改
替换单个元素
例:
li[2] = ‘s’
这种方法是利用下标方式替换元素

替换多个元素
例:
li[0:3] = ‘abc’
将元素0-3分别替换为’a’,‘b’,‘c’
里面的元素自动遍历之后逐个替换列表对应下标的元素
替换的数量不需要对应

5、列表的其他方法
copy()方法:复制列表
例:
li1 = li.copy(li)
如果被复制的列表(li)里面的元素改变了,那么已经复制的列表(li1)不会改变
id():可以查看列表对应地址,用于对比不同列表的地址
例:
id(li)

sort()方法:列表排序,会改变原列表
例:
li.sort()
同数据类型之间可以排序

reverse()方法:反向排序,将列表顺序颠倒
例:
li.reverse()
也可以用另一种方法
例:
li.sort(reverse = True)
注:reverse默认为False

count()方法:统计列表中元素出现的次数
例:
li.count(元素名)

sorted():临时排序,不会永久改变原列表的排序
例:
sorted(li)

sorted(li,reverse = True):临时反向排序

四、元组 tuple
例:
tu = (1,2,3,4,5)

1、元组可以索引取值
例:
tu[索引值]

2、元组也可以切片
例:
tu[0:3]

3、元组不能替换元素

4、根据元素查找对应索引值
例:
tu.index(元素名)

5、元组只有查方法

6、统计元组中元素出现的次数
例:
tu.count(元素名)

7、元组排完序返回的是一个列表

8、当元组的括号“()”里只有一个元素时返回的元素类型是int型
如果要返回tuple型则在这个元素后面加逗号“,”

9、元组拆包:
一个元组可以通过多个变量去接收
例:
a,b,c = tu
变量按顺序接收对应元组的元素值
注:c代表当a和b接收完成后,多余的元素值都给c(带“”的变量接收),并放在列表里面,带“
”的是不定长参数,“*”只能给一个变量(一个不定长参数)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值