2021-03-08学习python第四天

基本运算符

算术运算符

  • // 整除,只会保留计算后的整数位,总会返回⼀个整型
  • % 取模,求两个数相除的余数
  • ** 幂运算,求⼀个值的⼏次幂
  • **0.5, 开平方

⽐较运算符

  • == ⽐较两个对象的值是否相等
  • != ⽐较两个对象的值是否不相等
  • is ⽐较两个对象是否是同⼀个对象,⽐较的是对象的id
  • s not ⽐较两个对象是否不是同⼀个对象,⽐较的是对象的id

逻辑运算符

  • not 逻辑 ⾮
  • not可以对符号右侧的值进⾏⾮运算对于布尔值,⾮运算会对其进⾏取反操 作,True变False,False变True
    False,0,空值None以及带有空值性质的值均为False,其余值均为Ture。

and 逻辑 与

  • and可以对符号两侧的值进⾏与运算。 只有在符号两侧的值都为True时,才 会返回True,只要有⼀个False就返回False
  • 与运算是找False的,如果第⼀个值为False,则不再看第⼆个值,否则返回第二个值

or 逻辑 或

  • 或运算两个值中只要有⼀个True,就会返回True
  • 或运算是找True的,如果第一个值为True,则不看第二个值

⾮布尔值的与或运算

  • 当我们对⾮布尔值进⾏与或运算时,Python会将其当做布尔值运算,最终会 返回原值

⾮布尔值与运算的规则

  • 与运算是找False的,如果第⼀个值是False,则不看第⼆个值。如果第⼀ 个值是False,则直接返回第⼀个值,否则返回第⼆个值
  • and运算必须两个值都为True,所以第一个值为False的话就不用看下面了,直接输出第一个值
a = 4 and 5
print(a)
#4为True,返回第二个值
a = 0 and 3
print(a)
#0为False,返回0

⾮布尔值或运算的规则

  • 或运算是找True的,如果第⼀个值是True,则不看第⼆个值。如果第⼀个 值是True,则直接返回第⼀个值,否则返回第⼆个值
  • or运算只要有一个值为True即可,所以如果第一个值为True就不用往下看了,直接打印第一个值
a = 1 or 2
print(a)
#1为True,直接打印
a = ‘’or 3
print(a)
# ''是带有空值性质的值,相当于False,返回第二个值
# 注意 ‘’和‘ ’不同,后者代表空格,不是空值性质的值

条件运算符(三元运算符)

  • 条件运算符在执⾏时,会先对条件表达式进⾏求值判断 ;如果判断结果为True,则执⾏语句1,并返回执⾏结果 ;如果判断结果为False,则执⾏语句2,并返回执⾏结果
  • 语法: 语句1 if 条件表达式 else 语句2
  • 条件运算符与if判断语句不一样
a = 30
b = 40
result = a if a > b else b
print(result)
#a	语句1
#a > b	条件表达式
#b	语句2

运算符的优先级

在这里插入图片描述

变量在内存中的原理

  • 变量在内存中都是由一块划定的区域,存储了这个对象的id、type、value

  • 整数

    • 可变类型,id值不会变
      在这里插入图片描述
    • 引用变量,id值不会变(不只是适用整数)
      在这里插入图片描述
  • 字符串
    * 不可变类型
    在这里插入图片描述
    * 如果强行改变,id也会变
    在这里插入图片描述

  • 列表

    • 可变类型,id也会变
      在这里插入图片描述
    • copy 相当于把一个东西复制一份放在其他位置,id表示位置,所以id会变
      在这里插入图片描述
    • copy的浅拷贝属性:只能拷贝第一层数据,更深层次的数据id值不会变
      在这里插入图片描述
  • 内存决定可以打开的最大文件\app数量,超出一定数量就会卡顿

  • 处理器决定文件\app运行的快慢

作业

#1.以4种格式化字符串的方式来实现 521 xxx 嫁给我好吗?
print('520%f' %1)
girlfriend='乖乖'
g=f'这是我女朋友{girlfriend}'
print(g)

gg='这是我女朋友{}'.format(f'{girlfriend}')
print(gg)


#2.现在有a b c三个变量,三个变量中分别保存有三个数值,请通过条件运算符获取三个值中的最大值


d = 1
while int(d) == 1 :
    a = input('请输入数值a:')
    b = input('请输入数值b:')
    c = input('请输入数值c:')
    if a.isdigit():
        if b.isdigit():
            if c.isdigit():
                num_max = a if a > b and a > c else b if b > c else c
                print(num_max)
            else:
                print('c只能输入数字')
        else:
            print('b只能输入数字')
    else:
        print('a只能输入数字')
    d = input('如果继续请扣1,如果放弃请扣任意数字:')
    if d != '1':
        print('Game over')
        break



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值