- 条件判断
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