3.标识符与运算符

标识符

用户编写代码时,对变量、类、方法等编写的名字,叫做标识符

标识符 必须区分大小写,不能是关键字,不能以数字开头,不能包含空格、制表符、数学符号、中划线、箭头等

推荐命名:见名知意,全部小写,单词之间用下划线_进行分隔 student_name,your_name

## 关键字   python语言定义,具有特殊用途的单词
# help()
## False               class               from                or
## None                continue            global              pass
## True                def                 if                  raise
## and                 del                 import              return
## as                  elif                in                  try
## assert              else                is                  while
## async               except              lambda              with
## await               finally             nonlocal            yield
## break               for                 not
# python3
# import keyword
# keyword.kwlist

student_name = "tang"
your_name = "tang"
print(student_name)
print(your_name)
tang
tang

运算符

运算符是一种特殊的符号,通过运算符对相应的数据类型的运算数进行运算

标准算术运算符 + - * /

整数除运算符 // 用于计算一个数值是另一个数值的多少倍

取余运算符 % a % b = a - b 倍数 = a - b (a // b) = 余数

幂运算符 **

布尔运算符 运用对布尔值进行运算,结果仍然是一个布尔值 and or not

赋值运算符 对于Python而言,变量是没有数据类型的,只有对象才有数据类型。通常情况下,一个变量只引用一种数据类型。

比较运算符 用于比较两个运算数,比较结果是一个布尔值 < <= > >= == != is is not is同一性测试

##标准算术运算符  + - * /
print(3+5)
print(5-3)
print(5*6)
print(6/3)  #2.0
8
2
30
2.0
##整数除运算符 //   用于计算一个数值是另一个数值的多少倍
print(9/4)  # 2.25
print(9//4)  # 2
print(5.0 // 2.4)  # 2.0
print(9 // -4)  # -3   9=(-4)*(-3)+(-3)  余数要在-4和0中间
print(-9 // -4)  # 2   -9=(-4)*2+(-1)  余数要在-4和0中间
print(-9 // 4)   # -3   -9=(4)*(-3)+(3) 余数要在4和0中间
2.25
2
2.0
-3
2
-3
##取余运算符 %   a % b = a - b * 倍数 = a - b * (a // b) = 余数
print(9%4)  # 1
print(-9%4)  # 3
print(9%-4)  # -3
print(-9%-4)  # -1

##幂运算符 **
print(3 ** 2) # 9
print((-3) ** 2) # 9
print(-3 ** 2) # -9
print(-3 ** 3) # -27
1
3
-3
-1
9
9
-9
-27
##布尔运算符 运用对布尔值进行运算,结果仍然是一个布尔值 and or not
print( True and True)  #True
print( False and False)  #False
print( True and False)   #False
print( True or True)  #True
print( False or False)  #False
print( True or False)   #True
# not 取反
print(not True)  #False
print(not False)  #True
result = 10 > 5
print(f"10>5的结果是:{result},类型是:{type(result)}")
a = "abc"
b = "abc"
print(f"{a is b}")
True
False
False
True
False
True
False
True
10>5的结果是:True,类型是:
True
##赋值运算符  对于Python而言,变量是没有数据类型的,只有对象才有数据类型。通常情况下,一个变量只引用一种数据类型。
i = 18
print(i)
j = i
print(j)
j = 'hello'
print(type(j))
print(j)
#链式赋值
a=b=c= 18
print(a,b,c)
#参数赋值 + - * /  += -= *= /= %= //=
a += b   # a = a + b
a //=b   # a = a // b
print(a)
18
18

hello
18 18 18
2
##比较运算符  用于比较两个运算数,比较结果是一个布尔值 < <= > >= == != is is not   is同一性测试
print(a>b)  #false
print(3<6)   #true
print(9==9.0)  #true
print(9!=9.0)  #false
d=[2,3,4]
e=[2,3,4]
print(d==e)   #true
print(d is e) #false
#不可变类型对象的is比较,对于不可变类型的对象,其内存可能会被重用,比如数值较小的整数对象
#id函数,用于返回对象的唯一标识(对象在内存中的地址)
a=b=16
c=16
print(id(a),id(b),id(c))   #140728224594840 140728224594840 140728224594840
print(a is c)   #true
#链式比较
print(a < c < d)  #false
print(1<2 and 4<8)  #true
False
True
True
False
True
False
140728393153432 140728393153432 140728393153432
True
False
True

对象none

对象None 对象none用于表示数据值的不存在,占据一定的内存空间,并不意味着空或者没有定义。

none是something 不是nothing 常用于初始化变量,或者重置变量为数据值不存在的状态

print(id(None))
140728392358768

运算符的优先级和结合性

运算符的优先级和结合性,每个运算符都有固定的优先级,当表达式中包含优先级不同的运算符时,高优先级的运算符会先参与运算

* / 的优先级比 + - 的优先级高,先乘除后加减

结合性 每个运算符都有固定的结合性,当表达式中包含优先级相同的运算符时,结合性定义了哪个运算符先参与运算

运算符结合性为左,那边左边的运算符先参与运算 2 + 3 + 3 - 4

运算符结合性为右,那么右边的运算符先参与运算 a = b = 12 ,b=12先参与运算

多个运算符的复杂表达式,可读性较低,为提高可读性,建议:使用小括号()来指定运算顺序,将复杂表达式拆分成几步来完成

and 比or优先级高,or的结合性是左

print(2+2*5)
12