控制流程-条件判断

- 条件判断

if, elif, else, while, break, continue, for…in…,

  • 三目运算符:简单的判断中可以缩短代码,比如只有一个if,一个else
  • 迭代:序列类型和散列类型
a = "取消"
if a == "登录":  #满足条件所执行的代码
	print("欢迎您")
else:  #当所有条件不满足的时候执行
    print("88")
print("结束了")    

可以写成以下:

print("欢迎您") if a == "登录" else print("88")
for i in range(1,10):
    for j in range(1,10):
        if j < i:
            continue
        print(i,'*',j,'=',i*j,end='\t')
    print()  # print本身自带换行符

for i in range(1,10):
    for j in range(1,10):
        if j < i:
            continue
        print('%s*%s=%s'%(i,j,i*j),end='\t')  #占位符
    print()
pp = {'a':1,'b':2,'c':3}
for i in pp:
    print(i)   #默认拿取的是键
for i in pp.values():  #拿取的是值
    print(i)

print(123)
temp = input()   #imput接收到的数据是STR
print(type(temp))   #属于input
  • 存取钱流程:
def cq():
    zf = 5000
    while True:
        temp = print('1:存钱 2:取钱 3:退出')
        inp = input('请选择:')
        if inp == '1':
            e = input('请输入金额:')
            if e.isdigit():
                zf = zf + int(e)
                print("存入成功,金额为:¥ %s" % zf)
                break
            else:
                print('输入错误')
        elif inp == '2':
            e = input('请输入提取金额:')
            if e.isdigit():
                e = int(e)
                if e <= zf:
                    zf = zf - e
                    print("提取成功,金额为:¥ %s" % zf)
                    break
                else:
                    print('余额不足')

            else:
                print('输入错误')

        elif inp == '3':
            break

        else:
            print('请重新选择')


while True:
    cq()
    tc = input('是否退出服务(1:是 2:否):')
    if tc == '1':
        break
    elif tc == '2':
        cq()
    else:
        print('请重新输入:')
  • for循环‘_’:
row = int(input('请输入行数: '))
for i in range(row):
    for _ in range(i + 1):
        print('*', end='')
    print()
请输入行数: 5
*
**
***
****
*****

- 列表容器/生成器对象

  • 用列表的生成表达式语法创建列表容器,需要耗费较多的内存空间
f = [x for x in range(1, 10)]
print(f)
f = [x + y for x in 'ABCDE' for y in '1234567']
print(f)
print(sys.getsizeof(f))  # 查看对象占用内存的字节数
  • 通过生成器可以获取到数据但它不占用额外的空间存储数据
f = (x ** 2 for x in range(1, 10))
print(sys.getsizeof(f))  # 相比生成式生成器不占用存储数据的空间
print(f)
for val in f:
    print(val)
<generator object <genexpr> at 0x0000022E2C6DAA98>  #生成器对象
120
1
4
9
16
25
36
49
64
81
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值