运算符 成员运算符 流程控制理论 流程控制之分支结构
作者:互联网
作业讲解
写代码要养成写注释的习惯,尤其是前期,用注释梳理思路再写代码。最后不要忘了代码格式化
获取用户信息并打印出下列格式
------------ info of XXX -----------
Name : XXX
Age : XXX
gender : XXX
Job : XXX
------------- end -----------------
# 首先我们先准备好文本格式,用 %s 替换 XXX
info =
"""
------------ info of %s -----------
Name : %s
Age : %s
gender : %s
Job : %s
---------------- end ---------------
"""
# 获取用户数据
name = input("请输入姓名:")
age = input("请输入年龄:")
gender = input("请输入性别:")
job = input("请输入职业:")
# 格式化输入
print(info % (name,name,age,gender,job))
运算符
补充运算符
1.逻辑运算符
and 与 (连接多个条件,且所有条件都要满足,才成立(True))
or 或 (连接多个条件,且一个条件满足,就成立(True))
not 非 (将条件取反,颠倒是非(对的变成错的,错的变成对的))
2.举例说明
1 == 1 and 2 > 10 and 3 != 6 or 10 <1
# 用 and 连接的条件,只要有一个错,结果就是 False
1 != 1 or 2 > 3 or 10 == 5
# 用 or 连接的条件,只要有一个对,结果就是 True
not False # 等同于 True
not True # 等同于 False
3.注意事项
三者如果混用 需要加上括号来区分优先级
(3>4 and 4>3) or ((1==3 and 'x' == 'x') or 3 >3)
成员运算符
一、in 在什么什么之内 not in 不在什么之内
1.举例说明
li = ['jason','oax','juxi']
#判断是否在名单内
print('jason' in li) # True
print('h' in li) # False
#列表在做成员运算时,最小单位是数据值整体,不能拆分也不能合并
s1 = 'hello python'
print('h' in s1) # True
#字符串在做成员运算时,最小单位是单个字符,也可以增加字符个数
d1 = {'name'='jason','age'=18,'pwd'='123'}
print('jason' in d1) # False
print('123' in d1) # False
print('name' in d1) # True
二、身份运算
is 判断数据值的内存地址是否一致(火眼金睛)
== 判断数据值是否一致 地址不管
1.举例说明
l1 = [11, 22, 33, 44]
l2 = [11, 22, 33, 44]
print(id(l1))
print(id(l2))
print(l1 == l2) # True 只判断值
print(l1 is l2) # False 判断内存地址
'''
数据值相等 内存地址可能不相等
内存地址相等 值肯定相等
'''
4.python内存优化
l1 = 10
l2 = 10
print(id(l1))
print(id(l2))
# Python针对数量较小的并且经常使用的数据会做内存优化:小整数池
# 会把两个数据值相同的名字绑向同一个数据
#有时候IDE编辑工具也会做更多的优化处理
流程控制理论
流程控制的理论:
本质就是:事务的执行流程 事物的执行流程总共就三种
1.顺序结构
从上往下依次执行
a = 10
b = 12
print(a)
print(b)
2.分支结构
根据条件的不同,执行不同的代码
a = 10
b = 20
c = 66
d = int(input())
if d > a :
print(d)
elif d > b:
print(a)
else :
print(c)
3.循环结构
根据条件的判断是否一直重复做某件事
c = 66
d = int(input())
t = 0
while d <= c:
d += 2
t += 1
else:
print('条件不满足')
print(t)
4.小知识
1.Python中使用代码的缩进来辨识代码的从属关系
缩进的代码是否运行取决于上面没有缩进的父代码(结尾有冒号)
2.缩进量没有硬性要求,但是为了美观,推荐使用四个空格
3.不是所有代码都可以是‘父代码’
if ,else,elif,while(elif else不能单独使用)
4.同属于一个父代码的多行子代码应保证相同的缩进量
如果代码缩进了,上一个缩进量比他少的就是他的‘父代码’
这个父代码如果不能拥有子代码,就会报错
5.相同缩进量的代码之间没有主次之分,会按序依次进行
流程控制之分支结构
在Python中如果想要编写分支结构,需要使用关键字:if
1.单if分支
if 条件 :
如果条件成立执行子代码
(条件可以是布尔值,也可以是表达式,可以是一个,也可以是有逻辑运算符链接的多个)
age = 5
if age > 1:
print(age)
# 嵌套
age = 20
if age < 30:
print('小姐姐好')
if True:
print('一起学习吧')
2.if...else分支
if 条件:
条件成立的执行子代码
else:
条件不成立执行的子代码
# 判断的条件可以是一个 也可以是由逻辑运算符连接的多个
c = 66
d = int(input())
t = 0
if d <= c:
d += 2
t += 1
else:
print('条件不满足')
print(t)
3.if...elif...else分支
if 条件1:
条件1成立执行的子代码
elif 条件:
条件1不成立,条件2成立的执行子代码
else:
上面所有条件不成立执行的子代码
# if, elif ,else三者连用,永远只会走一个分支
# elif 和 else都不能单独使用
4.if 的嵌套使用
1.定义各种条件
is_wechat = True # 要微信成功
is_movie = True # 一起看电影
is_agree = False # 同意一起吃饭
is_XX = True
2.条件判断
if is_wechat:
print("successful")
if is_movie:
print("watch movie")
if is_agree and True:
print("have a dinner")
else :
print('say goodbye')
else:
print('go away!')
else:
print("don't be silly")
作业
练习一:
age = input('请输入年龄:') # 输入年龄
height = input('请输入身高:') # 输入身高
weight = input('请输入体重:') # 输入体重
# 转换成整数型
a = int(age)
h = int(height)
w=int(weight)
if a >= 18 and a < 22 and h >170 and w <100:
print("表白")
else:
print('阿姨好')
练习二:
name1 = input('输入你的名字:') # 输入名字
if name1 == 'jason':
print('超级管理员')
elif name1 == 'tom':
print('普通业务员')
elif name1 == 'jack' or name1 == 'rain':
print('业务')
else:
print("普通用户")
练习三:
black_user_list = ['jason', 'kevin', '张三', '李四'] # 黑名单列表
user_name = input("请输入用户名:") # 登陆用户名
user_pwd = input("请输入密码:") # 输入登陆密码
pwd = '123123' # 密码
if user_name in black_user_list: # 黑名单的人
print('禁止入内!')
elif (user_name not in black_user_list) and user_pwd == pwd: # 不属于黑名单且密码正确
print('登陆成功!')
else: # 不属于黑名单且密码错误
print("密码错误,登陆失败!")
标签:控制,elif,流程,else,运算符,print,input,True,代码 来源: https://www.cnblogs.com/Zhang614/p/16397944.html