Python成员运算,身份运算和流程控制

时间:2021-08-01 19:55:18

成员运算

in
#判断……在……里面
print('a' in 'abcd') # 字符串判断a是否在abcd里面
print('you' in 'how are you') # 这种整体也可以判断
print('1' in ['1', '2', '3', '4', '5']) # 判断某个元素是否在某个列表里面(后面会用的很频繁)
print('number1' in 'number1':'1', 'number2':'2', 'number3':'3') # 字典中value不参与运算,只有key能被找到
not in
# 取反

身份运算

== 判断值是否相等
is 判断内存地址是否相等
internet_giants1 = ['tencent', 'alibaba', 'bytedance']
internet_giants2 = ['tencent', 'alibaba', 'bytedance']
# print(id(internet_giants1), id(internet_giants2)) 地址不一样
print(internet_giants1 == internet_giants2) # True
print(internet_giants1 is internet_giants2) # False
# 值相等内存地址不一定相等,内存地址一样值一定相等

流程控制

1.顺序结构
代码自上而下依次运行
2.分支结构
代码运行到某个节点之后根据条件不同执行不同代码(if判断)
3.循环结构
代码运行到某个节点之后一直重复执行某一段代码知道代码结束(while,for)

分支结构

必备知识
代码缩进:在python中用代码缩进来表示从属关系
一般情况下采取四个空格,其实几个空格都可以,只不过约定俗成的四个空格,这也是规范。
并不是所有代码都有从属代码
同级别代码要缩进同样的空格
(小技巧有冒号的代码,下一行代码必然要缩进) ‘’‘
if条件:
条件成立之后才会执行的代码
’‘’
# 如果年纪大于等于18周岁,打印欢迎进入异世界,如果小于18周岁,打印给爷爬
boy_age = input('请输入您的实际年龄:')
age = int(boy_age)
if age >= 18: # if判断
print('欢迎进入异世界~') # 是否执行取决于上面条件
else:
print('给爷爬!')
‘’‘
if条件:
代码1
代码2
···
else:
代码1
代码2
···
如果条件成立则走if的字代码
如果条件不成立则走else的字代码
’‘’
# 如果年纪如果小于18周岁,打印给爷爬,大于等于18周岁,打印欢迎进入异世界,如果年纪大于65岁 打印为了您的身体健康请您关闭此网站
boy_age = input('请输入您的实际年龄:')
age = int(boy_age)
if age < 18:
print('给爷爬')
elif age >= 18 and age < 65: # 条件可以是一个也可以是多个
print('欢迎进入异世界')
elif age >= 65:
print('为了您的身体健康建议您关闭此网站')
'''
if 条件1:
代码1
代码2
···
elif 条件2:
代码1
代码2
···
else:
代码1
代码2
···
条件1成立 执行if子代码
条件2成立 执行elif子代码
都不成立 执行else子代码
'''
#条件可以可以是一个 也可以是多个 # if嵌套 相亲对象
age = input('请问你今年多大?')
age = int(age)
car = input('有车吗?')
house = input('有房吗?')
is_success = True
if age <= 40 and car == '有' and house == '有':
print('我们加个微信吧')
if is_success:
print('吃饭 看电影')
else:
print('你等着嗷')
else:
print('我临时有事先走了')
# 成绩评判系统
#分数大于90 打印游戏;大于80打印良好;大于70打印一般;大于60打印及格;小于60打印挂科
# 有多个分支,if……if结构会运行一个判断之后还会接着判断;if……elese结构会无法运行每一个;所以应当用if……elif结构
score = input('请输入学生成绩>>>>>>:')
score = int(score)
if score >= 90:
print('优秀')
elif score >= 80:
print('良好')
elif score >= 70:
print('一般')
elif score >= 60:
print('及格')
elif score < 60:
print('挂科')
# 用户登录功能
# 1.获取用户的用户名和密码
# 2.判断用户名和密码是否正确
username = input('请输入您的账号:')
password = input('请输入您的密码:')
if username == 'jesse' and password == '123':
print('登录成功!')
else:
print('账户名或密码输入错误 请重新输入')
# 根据星期的不同选择做什么事情,周一看电影;周二打游戏;周三冥想;周四瑜伽;周五打篮球;周六和周日游泳
today = input'which day:'
if today == 'Monday'
print("movie")
elif today == 'Tuseday'
print('game')
elif today == 'Wednesday'
print('meditation')
elif today == 'Thursday'
print('Yoga')
elif today == 'Friday'
print('basketball')
elif today == 'Saturday' or 'Sunday'
print('swim')

循环结构

while 循环
while 条件:
想要重复执行的代码
# 让用户重复输入
while True:
res = input('已有账号 任意键登陆')
while True:
username = input('请输入您的账号:')
password = input('请输入您的密码:')
if username == 'jesse' and password == '123':
print('登录成功!')
break #结束离他最近的一个循环 本层循环
else:
print('账户名或密码输入错误 请重新输入')
'''
while 条件:
循环代码1
循环代码2
……
当条件成立,会依次执行子代码,子代码运行结束之后,判断while条件是否成立,成立继续执行,不成立结束运行
'''
# 打印1——10 除了数字5
x = 0
while x < 11:
if x == 5
x += 1
continue
print(x)
x += 1 while True:
res = input('已有账号 任意键登陆')
while True:
username = input('请输入您的账号:')
password = input('请输入您的密码:')
if username == 'jesse' and password == '123':
print('登录成功!')
while True:
cm = input('command:')
if cm == 'quit':
break
print('正在执行:%s'%cm)
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()