运算符与流程控制
Posted wuc123
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了运算符与流程控制相关的知识,希望对你有一定的参考价值。
今日内容概要
-
成员运算
-
身份运算
-
流程控制(重点)
if判断 while循环 for循环
今日内容详细
成员运算
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(\'登录成功\')
# else:
# print(\'用户名或密码错误\')
"""
while 条件:
循环体代码1
循环体代码2
...
当条件成立的情况下 会依次执行while子代码
子代码运行结束之后再次返回到条件处判断条件是否成立 如果成立继续执行
如果不成立则结束循环
"""
# while True:
# res = input(\'start>>>:\')
# while True:
# # 1.获取用户的用户名和密码
# username = input(\'username>>>:\')
# password = input(\'password>>>:\')
# # 2.判断用户名和密码是否正确
# if username == \'jason\' and password == \'123\':
# print(\'登录成功\')
# # 结束循环
# break # 结束离它最近的一个循环 本层循环
# else:
# print(\'用户名或密码错误\')
# break
# 循环打印1-10 除了数字7
# count = 1
# while count < 11:
# if count == 7:
# count += 1
# # 跳过本次循环 开始下一次循环
# continue
# print(count)
# # 让count自增1
# count += 1
# count = 1
# while count < 11:
# if count == 7:
# break
# print(count)
# # 让count自增1
# count += 1
# else:
# print(\'当while没有被break主动结束的情况下自动结束了 则会走else\')
循环嵌套
# 循环嵌套
# 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,i*j),end=\' \')
print()
作业
"""1.猜年龄的游戏
1.必写 错误的情况下只能猜三次 正确的情况下直接推出游戏
2.拔高
三次错误之后提示用户三次机会已用完 问他是否继续 如果继续则再给三次机会 如果不继续则直接退出"""
以上是关于运算符与流程控制的主要内容,如果未能解决你的问题,请参考以下文章