成员运算和循环嵌套

成员运算
in
判断在...里面
not in
取反

print('a' in 'hello world aaa')
print('hello' in 'hello world aaa')
print('jason' in ['jason', 'egon', 'kevin'])

字典参与成员运算 只有key参加 value无法参与

print('jason' in {'name': 'jason', 'pwd': 123})
print('name' in {'name': 'jason', 'pwd': 123})
身份运算
== 仅仅判断值是否相等
is 判断内存地址是否相等(id)

l1 = ['jason', 'egon', 'kevin']
l2 = ['jason', 'egon', 'kevin']

print(id(l1),id(l2))

print(l1 == l2) # True
print(l1 is l2) # False
"""
值相等内存地址不一定相等
内存地址相等值一定相等
"""
流程控制
顺序结构
代码自上而下依次运行(我们之前所写的代码都是顺序结构)
分支结构
代码运行到某个节点之后根据条件的不同执行不同的代码(if判断)
循环结构
代码运行到某个节点之后一直重复执行某一段代码直到结束(while、for)
分支结构
"""
必备知识
代码缩进
在python中使用缩进来表示代码的从属关系
一般情况下我们采取四个空格来表示缩进(推荐)

并不是所有的代码都可以拥有子代码
截至目前为止只有if可以拥有子代码

同属于一个关键字的子代码必须要保持相同的缩进量
ps:可以简单的记忆遇到冒号下面的代码必缩进

"""

如果女孩子的年龄小于30岁 打印小姐姐

girl_age = 58

if girl_age < 30: # if判断

print('小姐姐好')

print('小姐姐好')

print('小姐姐好')

print('小姐姐好')

"""
if 条件:
条件成立之后才会执行的代码
"""

如果女孩子的年龄小于30岁 打印小姐姐 否则打印认错人了

girl_age = 68

if girl_age < 30:

print('小姐姐好')

else:

print('认错人了')

"""
if 条件:
代码1
代码2
...
else:
代码1
代码2
...
如果条件成立则走if的子代码
如果条件不成立则走else的子代码
"""

如果女孩子的年龄小于30岁 打印小姐姐 小于40随打印阿姨我不想努力了 小于50岁老宝贝 否则躺平

girl_age = 28

if girl_age < 30:

print('小姐姐')

elif girl_age < 40:

print('阿姨我不想努力了')

elif girl_age < 50:

print('老宝贝')

else:

print('躺平')

"""
if 条件1:
代码1
代码2
...
elif 条件2:
代码1
代码2
...
else:
代码1
代码2
...
条件1成立 执行if的子代码 elif和else都不执行
条件2成立(说明条件1没有成立) 执行elif的子代码 if和else都不执行
如果条件都不成立 则走最后的else子代码 if和elif都不执行
elif可以写多个
"""
分支结构补充

条件可以是一个 也可以是多个连接

gender = 'female'

age = 18

height = 165

is_beautiful = True

if gender == 'female' and age < 22 and height > 155 and is_beautiful:

print('吃饭看电影 天黑了')

else:

print('我有事先走了')


if嵌套

gender = 'female'

age = 18

height = 165

is_beautiful = True

is_success = True

if gender == 'female' and age < 22 and height > 155 oand is_beautiful:

print('能否加个微信认识一下?')

if is_success:

print('吃饭 散步 看电影 交流')

else:

print('你是个好人')

else:

print('我有事先走了')


成绩评判系统

"""
分数大于90 打印优秀
分数大于80 打印良好
分数大于70 打印一般
分数大于60 打印及格
分数小于60 打印挂科
"""

score = input('score>>>:')

# 暂且先忽略

# score = int(score)
# if score > 90:
#     print('优秀')
# elif score > 80:
#     print('良好')
# elif score > 70:
#     print('一般')
# elif score > 60:
#     print('及格')
# else:
#     print('挂科')



2.用户登录功能

1.获取用户的用户名和密码

username = input('username>>>:')

password = input('password>>>:')

# 2.判断用户名和密码是否正确

if username == 'jason' and password == '123':

print('老板好 来宾三位!')

else:

print('去你妹的')


3.根据星期的不同做出不同的动作 周一到周五划水 周六周日躺平

today = input('周几>>>:')

if today in ('一','二','三','四','五'):

print('划水')

elif today in ('六','七'):

print('躺平')

else:

print('见了鬼了')


循环结构

循环嵌套

循环嵌套

while True:

# 1.获取用户的用户名和密码

username = input('username>>>:')

password = input('password>>>:')

# 2.判断用户名和密码是否正确

if username == 'jason' and password == '123':

print('登录成功')

# 循环结构

while True:

command = input('command>>>:')

if command == 'q':

break

print('正在执行您的命令:%s'%command)

break

else:

print('用户名或密码错误')


全局标志位

flag = True

while flag:

# 1.获取用户的用户名和密码

username = input('username>>>:')

password = input('password>>>:')

# 2.判断用户名和密码是否正确

if username == 'jason' and password == '123':

print('登录成功')

# 循环结构

while flag:

command = input('command>>>:')

if command == 'q':

flag = False

print('正在执行您的命令:%s'%command)

else:

print('用户名或密码错误')

for循环
for循环能够做到的事情while循环都可以做到
但是for循环使用起来比while更加的简单快捷

name_list = ['jason','egon','kevin','tony']

print(len(name_list)) # 4

使用while循环将列表中的元素依次打印出来

count = 0

while count < len(name_list):

print(name_list[count])

count += 1

for循环

for name in name_list:

print(name)

"""
for 变量名 in 可迭代对象: # 看成是 字符串 列表 字典等类型
for循环的循环体代码

变量名如果你真的不知道起什么 一般都是以
i、j、item
"""

for i in 'hello world': # for循环字符串 将单个单个的字符依次赋值给变量名i

print(i)


for i in {'name':'jason','pwd':123}: # for循环字典 指挥依次拿到字典的key

print(i)


打印0-10

count = 0

while count < 11:

print(count)

count += 1

for i in range(11): # range简单的看成是一个能够产生一个含有多个元素的列表

print(i)

for i in range(1,11): # range简单的看成是一个能够产生一个含有多个元素的列表

print(i)

"""
range(起始位置,终止位置)
顾头不顾尾
"""

"""
range
在python3中 类似于是一个老母猪
需要值的时候才会给你 不需要的时候就不给 节省内存
在python2中 直接生成一个列表
不节省内存
xrange(10) 等价于 python3里面的range()
"""


break

for i in [1,2,3,4,5,6]:

if i == 4:

break # 结束本层for循环 与while+break一致

print(i)

continue

for i in [1,2,3,4,5,6]:

if i == 4:

continue # 结束本次for循环 与while+continue一致

print(i)

else for循环正常结束之后走else 否则不走 与while+else一致

for i in range(5):

if i == 3:

break

print(i)

else:

print('快结束了')


九九乘法表

for i in range(1,10):
for j in range(1,i+1):
print('%s%s=%s'%(i,j,ij),end=' ')
print()

posted @ 2021-06-01 19:01  Aisa  阅读(60)  评论(0)    收藏  举报