#三元操作符的条件表达式
x,y=4,5
small=x if x<y else y #结果为:4
#表示如果x<y,small=x,否则small=y
#断言:assert 当此关键词后面的条件为假时,程序自动崩溃并抛出AssertionError的异常
#自爆:一般在测试程序时使用,与其让错误条件导致程序崩溃,不如在错误条件出现的瞬间让程序自爆
assert 3<4 #可通过程序代码捕获该异常并进行处理
#可以用assert在程序中置入检查点,当需要确保程序中某个条件必须为真才能让程序正常工作的话,assert关键字作用就很大
#while循环和for循环
# for 目标 in 表达式
# 循环体
list=['Nicole','dan','moher']
for each in list:
print(each,len(each),end=' ') #Nicole 6 dan 3 moher 5
#range(); BIF内置函数:生成一个从start开始到stop结束的数字序列
#语法:range( [start,] stop [,step=1] ) ;[,step=1]表示步进,递增的数,第三个参数的默认值是1
#若无start值,默认从0开始
range(4) #返回:range(0,5)
print(list(range(4))) #[0, 1, 2, 3]
#range 常和循环共用
for i in range(2,9):
print(i,end='') #2345678
for i in range(2,10,2): #添加步进为2
print(i,end='') #2468
for i in range(10):
if i%2 != 0:
print(i)
continue
i+=2
print(i)#21436587109
#列表的数据交换:是和我,这两个列表交换
list=['我','是','小明']
temp=list[0] #用中间变量先将 我 存起来
list[0]=list[1] #将索引0 存储为 是 列表
list[1]=temp#再调出 我 这个列表,存到索引1的位置
#返回['是', '我', '小明']
#列表之间的比较、运算
list1=[123,456]
list2=[234,123]
list1<list2 #true;多个元素列表,从0开始比较,成立即不再继续
list1+list2 #123,456,234,123 ;直接列表值进行拼接,但不支持新增。extend,可以新增
#列表元素的判断:in not in 只能同层判断,不能判断子列表
list4=[123,333,[111,222],0]
0 in list4 #true
111 in list4 #false
#若想跨层判断:
111 in list4[2] #true
#查看列表的所有内置方法:调用方法都是 list.方法名
print(dir(list))
#list.reverse()列表逆序
#sort 对列表成员进行排序,sort有三个参数,默认进行升序排序
list4=[123,333,111,222,0]
list4.sort() #本身不会有返回值,默认进行升序排序
print(list4)#[0, 111, 123, 222, 333]
#进行降序排序
list4.sort(reverse=True) #[333, 222, 123, 111, 0]
#关于分片‘拷贝’概念的补充【适用于列表、元组】
list_copy1=list1 #没有新建拷贝列表,只是多了一个指向list1的变量,本质还是一个列表
list_copy2=list[:]#新建了一个list_copy2列表,此时存在两个一样的列表
#决定是否为元组类型的不是括号,而是逗号
r=2,3,4
type(r) #也是元组
python-循环分支补充
最新推荐文章于 2024-09-05 11:10:46 发布