学习python的第四天_内存地址

 

今日内容概要

逻辑运算符

成员运算符

身份运算符

流程控制(重点)

if 判断 while 循环 for 循环

 

 

逻辑运算符

and
    链接的多个条件必须都满足结果才成立否则不成立
        eg:相亲对象身高165以上并且体重110以下并且长得漂亮并且家里有钱
所有的条件必须在逻辑上都是正确的才行

or 链接的多个条件有一个满足即可 eg:相亲对象身高165以上或者体重110以下或者长得漂亮或者家里有
只要有一个条件满足就是对的

not 对条件取反意 今天学的内容真他妈的简单》》》不简单print(1 > 2 and 4 > 1) # False and链接多个条件 只要有一个是False就不用往后看了 结果肯定是False print(False and 1 < 4 and 5 > 1 and 9 > 6 and 8 > 3 and 7 > 9) print(1 > 2 or 4 > 1) # True or链接多个条件 只要有一个是True就不用往后看了 结果肯定是True print(False or 1 < 4 or 5 > 1 or 9 > 6 or 8 > 3 or 7 > 9) print(not True) # False """ 上述三个关键字如果混合使用是存在优先级的 但是我们不需要考虑优先级 在书写的时候应该通过括号强制规定优先级关系 eg:先乘除后加减 打破顺序可以使用括号 """

成员运算符

判断某个个体(局部)在不在某个群体(整体)内    in
    stu_list = ['jason', 'tom', 'kevin', 'tony']
    guess_name = input('name>>>:')
    print(guess_name in stu_list)如果输入的个体在他们当中就是true
    print(guess_name not in stu_list)如果输入的个体不在他们当中就是false
学习python的第四天_缩进_02

 

 学习python的第四天_分支结构_03

身份运算符

查看变量值所在的"内存地址"
id()返回一串表示内存地址的数字

>>> name1 = 'jason kevin tony'
>>> name2 = 'jason kevin tony'
>>> id(name1)
    1358885155152
>>> id(name2)
    1358885155224
>>> x = y = z = 'jason kevin tony'
>>> id(x)
    1358885155296
>>> id(y)
    1358885155296
>>> id(z)
    1358885155296
>>> name1 == name2  # 判断两个变量的值是否相等
    True
>>> name1 is name2  # 判断两个变量绑定值的内存地址是否相等
    False
 
两个变量的值相等 那么内存地址不一定相等
两个变量的内存地址相等 那么值肯定相等

流程控制(重点中的重点)

流程控制就是控制执行的流程
    流程主要分为三种
        1.顺序结构(忽略)
            从上往下依次执行(截止目前为止我们所写的代码都是顺序结构)
2.分支结构(重点)
            根据条件的不同执行不同的流程
3.循环结构(重点)
            根据条件循环往复的执行某一个过程

 


 

在python中通过代码的缩进来表示代码的从属关系
如果上面的代码没有缩进下面的代码缩进了
那么表示下面的代码属于上面的代码 下面代码是否就要取决于上面的代码

 

在python中并不是所有的代码都可以拥有子代码
可以拥有子代码的(目前碰到的只有IF)

 

属于同一个关键字的多行子代码必须要保持相同的缩进量(一般为四个空格只是为了好看)

 

小技巧:当某一行代码的结尾出现了冒号 那么下一行代码必缩进

 


 


分支结构

举个例子:
如果年龄大于28岁 叫阿姨 age = 20 if age > 28: print('阿姨好')

语法结构 if 条件: 条件成立之后执行的子代码 再来个例子 username = input('username>>>:') if username == 'jason': print('欢迎jason')
表示只要我输入的内容跟我定义的条件相同成立了输出的就是欢迎jason

 学习python的第四天_分支结构_04


# 如果年龄大于28岁 叫阿姨 否则叫小姐姐
age = 38
if age > 28:
     print('阿姨好')
else:
     print('小姐姐好')
if 条件:
    条件成立执行的子代码
else:
    条件不成立执行的子代码
表示如果现在的条件满足if的话就是阿姨好
没有满足的话就是小姐姐好

 学习python的第四天_内存地址_05

 

 学习python的第四天_while循环_06

 学习python的第四天_缩进_07

 

 


# 如果:成绩>=90,那么:优秀 # 如果成绩>=80且<90,那么:良好 # 如果成绩>=70且<80,那么:普通 # 如果成绩>=60且<70,那么: 及格 # 如果成绩<60 那么: 挂科 score = 50 if score >= 90: print('优秀') elif score >= 80: print('良好') elif score >= 70: print('普通') elif score >= 60: print('及格') else: print('挂科')

 


 score后面的数字满足哪个条件出来的就对应是什么


语法结构 if 条件1: 条件1成立执行的代码 elif 条件2: 条件1不成立条件2成立执行的代码 elif 条件3: 条件1和2都不成立条件3成立执行的代码 else: 上述条件都不成立执行的代码 中间的elif可以有多个 if 和 else只能有一个(前提:在同一个分支结构中) if elif else连用 肯定只会走一个 其他的肯定不走 # if嵌套 # 如果年龄大于28岁 叫阿姨 否则跟小姐姐要微信 # 要么成功要么失败 is_success = True age = 18 if age < 28: print('小姐姐 加个微信呗') if is_success: print('吃饭 看电影 天黑了~~~') else: print('去你妹的 臭流氓!') else: print('不好意思看错人了!')

 学习python的第四天_内存地址_08

 

 这个我给他的是没有成功所以是这样的

如果给他定义成true的话就是吃饭看电影

 

 

循环结构

while True:
#     username = input('username>>>:')
#     password = input('password>>>:')
#     print(username, password)
语法结构
    while 条件:
        条件成立之后执行的循环体代码
1.先判断条件是否成立 如果成立
2.执行while循环体代码 代码执行完毕之后继续判断条件是否成立
3.如果还成立则继续执行while循环体代码 代码执行完毕之后继续判断条件是否成立
4.重复执行步骤2和3直到条件不成立为止
"""
# 利用while循环打印1-10
count = 1
while count < 11:
     print(count)
     count += 1

# 利用while循环打印1-10 但是排除7
count = 1
while count < 11:
     # 判断count是否等于7 如果等于则不打印
     if count == 7:
         # 结束本次循环 开始下一次循环
         count += 1
         continue  # 直接跳到循环体的条件判断处重新判断条件
     print(count)
     count += 1

# 利用while循环打印1-10 但是到7之后直接结束循环
count = 1

while count < 11:
     # 判断count是否等于7 如果等于则结束循环
     if count == 7:
         # 结束本层循环
         break
     print(count)
     count += 1
"""
break和continue只能影响所在层的while
"""
count = 1

while count < 11:
    # 判断count是否等于7 如果等于则结束循环
    if count == 7:
        while True:
            cmd = input('cmd>>>:')
            print(cmd)
            if cmd == 'q':
                break
    print(count)
    count += 1