python(day008——控制流)

>>> bool(0)
False
>>> bool(())
False
>>> bool([])
False
>>> bool("")
False
>>> bool("  ")
True

1.if的简写

>>> 4 if 2>3 else 5
5
>>> 4 if 2<3 else 5
4

2.enumeratr()  返回索引号和内容

3.循环嵌套

l1=[0,1,2,3]
l2=[0,1,2,3]
result=[]
for i in l1:
    for j in l2:
        if (i,j) in result or (j,i) in result:
            pass
        else:
            result.append((i,j))

print(result)

4.break、continue、pass

pass是空语句,是为了保持程序结构的完整性。pass 不做任何事情,一般用做占位语句。循环中使用pass语句,不会跳出循环。

continue跳出本次循环。

break 跳出整个循环。

5.判断是否可迭代

>>> from collections import Iterable
>>> isinstance('abc',Iterable)
True
>>> isinstance(123,Iterable)
False
>>> isinstance([1,2,3],Iterable)
True

练习题

# 用两个while,取出里面包含2的数字并打印
i = [[12, 23, 34], [45, 56, 92]]
result = []
n = 0
while n < 2:
        for j in i[0]:
            if '2' in str(j):
                 result.append(j)
        for j in i[1]:
            if '2' in str(j):
                 result.append(j)
        break

print(result)
#用两个while,取出里面包含2的数字并打印
l=[[1,2,3],[4,5,6],[7,8,9]]
result=[]
n=0
#求 所有元素之和
for i in l:
    for j in i:
        result.append(j)
print("所有元素之和",sum(result))

#求 第一列元素之和和最后一列元素之和
result1=[]
result2=[]
for i in l[0]:
    result1.append(i)
for i in l[-1]:
    result2.append(i)
print("第一列元素之和",sum(result1))
print("最后一列元素之和",sum(result2))

#求 对角线元素之和
result3=[]
for i in range(len(l)):
    for j in range(len(l[i])):
        if i==j:
            result3.append(l[i][j])
print("对角线元素之和",sum(result3))

#求 矩阵一圈元素之和
result4=[]
for i in range(len(l)):
    for j in range(len(l[i])):

        if i==0 or i==(len(l)-1):
            result4.append(l[i][j])
        elif j==0 or j==(len(l)-1):
            result4.append(l[i][j])
        else:
            pass

print(result4)
print("矩阵一圈元素之和",sum(result4))

#三维矩阵的所有元素之和
l1=[[[1,2],[3,4]],[[5,6],[7,8]]]
result5=[]
for i in l1:
    for j in i:
        for k in j:
            result5.append(k)

print(result5)
print("三维矩阵的所有元素之和",sum(result5))

 

 

 

 

 

 

 

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值