python-循环分支补充

#三元操作符的条件表达式
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) #也是元组




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值