运算符的补充 逻辑运算、成员运算、身份运算 流程控制理论 流程控制详细的语法 1.顺序结构 2.分支结构 3.循环结构
作者:互联网
今日内容概要
-
运算符的补充
逻辑运算、成员运算、身份运算
-
流程控制理论
-
流程控制详细的语法
1.顺序结构 2.分支结构 3.循环结构
今日内容详细
运算符补充
1.逻辑运算符
and 与
or 或
not 非
'''上述三个运算符都是用来配合条件一起使用'''
and链接的多个条件必须全部都成立才成立(Ture)
or链接的多个条件只要有一个成立就成立(Ture)
not将条件取反(就是取条件的反义词条件)
2.习题演练
1 != 1 or 2 or False or 3 < 2 or 10 < 1
# Ture
因为上述题目是用 or 连接的,所有只要有一个条件成立就可以了
1 == 1 and 2 > 10 and 3!=6 and True and 10 < 2
# false
因为上述题目是用 and 连接的 所有需要条件都成立,只要有一个条件不成立,结果就是不成立的
3.注意事项
三者如果混合使用 其实是有优先级的!!!
3>4 and 4>3 or 1==3 and 'x' == 'x' or 3 >3 # 先看 and 连接的条件 在看 or 的 在混和比对时顺序是 not > and > or
所以结果是 # False
1.身份运算
is 判断数据值的内存地址是否一致
== 判断数据值得值是否一致 地址无所谓不做比对
2.只是储备
id() 该方法会返回一串数字 相当于内存地址
3.实战演练
l1 = [12, 23, 34, 45]
l2 = [12, 23, 34, 45]
print(id(l1)) # 33881160
print(id(l2)) # 33880776
print(l1 == l2) # Ture 只判断值
print(l1 is l2) # False 判断内存地址
'''值相等 内存地址不一定相等
内存地址相等 值一定相等(单次程序中)'''
流程控制理论
流程控制的概念
本质就是事物发展的流程,发的方向一共就三种发展流程
1.顺序结构
从上往下按顺序依次的执行
2.分支结构
根据条件去执行不同的代码 不同的执行放西昂
3.循环结构
根据对条件的判断 决定是否一直做某流程
知识储备
1.python中使用的代码的缩进来表示代码的从属关系
缩进的代码是否运行取决于上面没有缩进的父代码(结尾有冒号)
2.缩进量其实没有硬性规定 只要缩进了就可以
一般为了美观建议缩进四个空格或者用tab键快捷缩进
3.3.并不是所有的代码都可以拥有子代码
if关键字 else关键字 elif关键字 ( elif else不能单独使用)
4.同属于一个父代码的多行子代码应该保证相同的缩进量
如果代码缩进了 那就必须往上找一个缩进量比它小的代码作为父代码
这个父代码如果可以拥有子代码 那么没有问题 不可以则直接报错
5.相同缩进量的代码彼此之间没有主次之分 都是按照顺序依次执行
流程控制之分支结构
'''在python中如果想要编写分支结构的代码,需要用到关键字if
'''
1.单if分支
dif条件:
条件成立则执行所成立执行的代码 也就是子代码
# 条件可以是布尔值 也可以是表达式
# 判断的条件可以是一个 也可以是有逻辑运算符连接的多个
例如:
if age < 30:
print('小姐姐你好')
if True:
print('你很好')
2.if...else 分支
if条件:
条件成立之后之执行的子代码
else:
条件不成立执行的子代码
# 判断的条件可以是一个 也可以是由逻辑运算符连接的多个
# 1.获取用户名和密码
name = input('name>>>:')
pwd = input('pwd>>>:')
# 2.判断用户名和密码是否正确(目前只能写死)
# if name == 'jason' and pwd == 123: # python中不同数据类型之间无法直接做比较,所以上述的pwd == 123,这个123是整型,不是字符串,代码会执行错误
if name == 'jason' and pwd == '123': # python中不同数据类型之间无法直接做比较,把 pwd == '123' 后 变成了字符串就可以比较了 但是在 == 号这种等于的符号可以把输入的整形直接加 '' 变成字符串,在 < > 等这些运算符号做比较的时候,加 '' 比较的方式不可取了,还是在需要做整型比较的时候,在输入整形数据值前加 int(整形符号)来转换一下 比较稳妥 例如:pwd = int(input('pwd>>>:'))在下面 if 条件内 写 pwd == 123 的时候就不需要加 '' 号了
print('贵宾一位')
else:
print('没钱滚蛋')
3.if...elif...else分支
if 条件1:
条件1成立执行的子代码
elif 条件2:
条件1不成立 条件2成立执行的子代码
elif 条件3:
条件1和2都不成立 条件3成立执行的子代码
else:
上述所有的条件都不成立执行的子代码
# if elif else三者连用 永远只会走一个分支
# elif 和 else都不能单独使用 必须结合if
4.if的嵌套使用
# 在大街上看到一个漂亮的背影 上去要微信
# 如果要微信成功了 则邀请她去看电影(她可能拒绝 也可能接受)
# 如果接受了则继续吃饭 逛街 等待天黑!!!
# is_wx = 1
# is_dy = 1
# is_cg = 0
# is_th = 1
# if is_wx :
# print('要微成功')
# if is_dy:
# print('看电影')
# if is_cg and True:
# print('吃饭 回家')
# else:
# print('回家睡觉')
# else:
# print('不看电影')
# else:
# print('不给微信')
# 今日作业:
1.女人的年龄>=18并且<22岁并且身高>170并且体重<100并且是漂亮的,那么:表白,否则:叫阿姨好
# 解法一
# age = int(input('请输入您的年龄>>>:'))
# sg = int(input('请输入您的身高>>>:'))
# tz = int(input('请输入您的体重>>>:'))
# if 18 <= age < 22 and sg > 170 and tz < 100:
# print('表白')
# else:
# print('阿姨好')
# 解法二
# age = 20
# sg = 199
# tz = 88
# if 18 <= age < 22 and sg > 170 and tz < 100:
# print('表白')
# else:
# print('阿姨好')
2.根据用户输入内容打印其权限
'''
jason --> 超级管理员
tom --> 普通管理员
jack,rain --> 业务主管
其他 --> 普通用户
'''
# name = input('请输入您的用户名>>>:')
# if name == 'jason':
# print('超级管理员')
# elif name == 'tom':
# print('普通管理员')
# elif name in ('jack', 'rain'):
# print('业务主管')
# else:
# print('普通用户')
3.编写用户登录程序
要求:有用户黑名单 如果用户名在黑名单内 则拒绝登录
eg:black_user_list = ['jason','kevin','tony']
如果用户名是黑名单以外的用户则允许登录(判断用户名和密码>>>:自定义)
eg: oscar 123
# 方法1;
# name = input('请输入您的用户名>>>:')
#
# black_user_list = ['jason', 'kevin', 'tony']
#
# if name in black_user_list:
#
# print('已拉黑')
# else:
# pwd = input('请输入密码>>>:')
# if name == 'make' and pwd == '123':
# print('欢迎make')
# else:
# print('名字或密码不对')
# 方法二:
# name = input('请输入您的用户名>>>:')
#
# black_user_list = ['jason', 'kevin', 'tony']
#
# if name not in black_user_list:
# pwd = input('请输入您的密码>>>:')
# if name == 'make' and pwd == '123':
# print('欢迎make')
# else:
# print('用户名或密码错误')
# else:
# print('拉黑')
标签:运算,name,代码,else,pwd,条件,print,流程,结构 来源: https://www.cnblogs.com/55wym/p/16414245.html