初识python03

变量和对象

  • 对象并没有直接存储到变量中,在python中,变量更像是给对象起了一个别名
  • 变量中存储的不是对象的值,而是对象的id(内存地址)
  • 当我们使用变量时,实际上是在通过对象的id查找对象
  • 变量中保存的对象,只有在为变量重新赋值的情况下才会改变

运算符

  • 算术运算符
    1.加法运算(如果是两个字符串之间进行加法运算,那么是将两个字符串进行拼接)
a = 5
b = 7
print("a+b=",a+b) #12
x = "hello"
y = "world"
print(x+" "+y)  #hello world

2.减法运算

c = 10
print(c-7) #3

3.乘法运算(如果将字符串和数字相乘,那么会将字符串进行复制,将字符串重复指定的次数)

d = 4
e = 5
print(d*e) #20
f = "hello"
print(f*d) #hellohellohellohello

4.除法运算(运算结果会返回一个浮点型)

g = 10
print(g/2) #5.0

5.整除// (特殊的除法运算,结果只取到整数部分,小数的部分舍去)

h = 20
print(h//3)  #6

6.幂运算**(求一个数的几次方)

i = 3
print(2**3) #8

7.模运算%

j = 13
print(j%5) #3
  • 赋值运算符
    1.=
    将右边的值赋值给左边的变量
    2.+=
    a+=5相当于是a = a+5
    3.-=
    a-=5相当于是a = a-5
    4.=
    a
    =5相当于是a = a*5
    5./=
    a/=5相当于是a = a/5(注意对一个浮点数进行运算时,得到的也会是一个浮点数)
    6.=
    a
    =5相当于是a = a**5
    7.//=
    a//=5相当于是a = a//5
    8.%=
    a%=5相当于是a = a%5
  • 比较运算符(关系运算符)
    关系运算符总会返回一个布尔值,要么时True,要么时False
    在python中可以对两个字符串进行比较,比较的是两个字符串的值的Unicone编码
    比较两个字符串的Unicode编码时,是逐位比较的
print("ab" > "b") #False,因为逐位比较,a小于b,所以就是False
print("2" > "12") #True,因为是逐位比较的

如果不希望比较两个字符串的编码,则可以先将其转换成数字,再进行比较

print(int("34")>int("22")) #此时就是比较的是数字34与22

1.>
2.>=
3.<
4.<=
5.==(比较的是值是否相等,不是内存地址是否相等!!)
6.!=

  • 逻辑运算符
    1.not非 (对于本身不是布尔类型的值,会先将该值转化成布尔类型的,再进行取反)
a = 1
print(not a) #False

2.and与(全真为真,有假则假)
and遵循“短路与”的规则,即如果第一个值是false,则不再看第二个值,直接给结果

print(False and True) #结果是False,因为and是短路与规则,看到第一个数是False,那么久不再往下看,直接给False

3.or或 (全假则假,有真为真)
如果第一个值是False,那么继续往下找,看第二个数是False还是True,再进行结果判断
如果第一个值是True,那么直接给出结果是True(有真为真!!)
4.注意:当对非布尔值进行比较运算时,python会将其当做布尔值,最终返回的是原值

print(1 or 0) #返回1 ,因为是or或运算,有真则真,看到1的时候就知道是真了,所以不往后看,直接就是真,返回第一个数1
print(0 or 1) #返回1 ,因为是or或运算,,有真则真,全假为假,看到第一个数是假的,久会往后看,发现第二个数是真的,所以返回的应该是真,即返回第二个数1
print(1 and 0)#返回0 ,因为是and与运算,有假为假,全真为真,看到第一个数是真的,久会往后看,确保都是真的才可以判断为真,往后看发现是假的,所以返回的也应该是假的,即返回第二个数0

5.补充
逻辑运算符可以连着写

print(1<2<3) #结果是True,相当于1<2 and 2<3
print(10<20>15) #结果是True,相当于是10 <20 and 20 >15
  • 条件运算符(三元运算符)
    语法:语句1 if 条件表达式 else 语句2
    执行流程:
    当条件运算符在执行时,会先对条件表达式进行求值判断
    如果判断结果为true,会执行语句1,并返回执行结果
    如果判断结果为false,会执行语句2,并返回执行结果
print("hello" if True else "hi") # 返回hello
posted @ 2020-09-17 21:47  L小龙虾  阅读(92)  评论(0)    收藏  举报