数字类型
数字类型
整型 int
浮点型(小数) float
5.3e+56 5.3e-56 (科学记数法 用e表示)
运算表达式
运算表达式
表达式: 由一个数字或者数字和运算符构成
算数运算符
+ 加法
- 减法
* 乘法
/ 除法 得到浮点数
// 除法 取整数商
% 取余
** 幂运算
# 加法
x = 3+5
y = 1.1+2.2
z = 1+1.1
print("x=",x,"y=",y,"z=",z)
# x= 8 y= 3.3000000000000003 z= 2.1
在上面的示例中 出现了 1.1+2.2=3.3000000000000003 这样的状况是由于计算机内部表示数字的方式才导致这种情况,后期会教给大家保留数的方法
当高精度数据和低精度数据进行运算时结果自动转换为高精度
# 乘法
print(3.4 * 3.3)
# 11.219999999999999
# 科学记数法
x = 2e+5
y = 3e-3
print("x=",x,"y=",y)
# x= 200000.0 y= 0.003
# 除法
x = 10 / 3 # 得到浮点数
y = 10 // 3 # 取整数商
print("x=",x,"y=",y)
# x= 3.3333333333333335 y= 3
# 取余
x = 50 % 6.3
y = -9 % 3.3
print("x=",x,"y=",y)
# x= 5.900000000000001 y= 0.8999999999999995
注意:在python中 % 两边可以不是相同的数据类型
# 幂运算
x = 5 ** 6
y = 3 ** 3.3
print("x=",x,"y=",y)
# x= 15625 y= 37.540507598529544
运算符优先级:在一个表达式中可能包含多个有不同运算符连接起来的、具有不同数据类型的数据对象;由于表达式有多种运算,不同的运算顺序可能得出不同结果甚至出现错误运算错误,因为当表达式中含多种运算时,必须按一定顺序进行结合,才能保证运算的合理性和结果的正确性、唯一性。
优先级
**
/ // * %
+ -
例如以下实例
x = 2 + 5 * 6 ** 3 + 4 // 3
print("x=",x)
# x = 1083
# 在“x = 2 + 5 * 6 ** 3 + 4 // 3” 这个式子中
# 计算顺序依次是:
i = 6 ** 3
y = 5 * i
z = y + 4 // 3
x = 2 + z
print("i=",i,"y=",y,"z=",z,"x=",x)
# i= 216 y= 1080 z= 1081 x= 1083
常量和变量
变量:自定义的标识符,用来代表某个值
标识符,即在编程中自己给需要七名的地方起的名字,如:
变量名,类名,函数名等
定义规则:
1.字母数字下划线组成
2.不能以数字开头
3.不能和python保留字相同
4.中文也可以作为标识符(但是不建议用)
= 赋值符号 左侧为变量,右侧为要为变量赋予的值
在一个程序中第一次对某个变量赋值,叫做初始化
变量的特点
1.python中变量不需要提前定义,何时使用何时直接赋值,初次赋值即称为变量的初始化
2.变量可以被多次赋值,后赋值内容会覆盖前面内容
3.python中没有固定类型,赋值什么类型的数据即为什么类型的变量
# python中没有固定类型,赋值什么类型的数据即为什么类型的变量
# 在其他编程语言中,赋值要先确定数据类型,int double float等,但是python中不需要先确定数据类型
# 在其他编程语言中:int a; # a 只能赋值为整型变量
# 但是在python中
a = 1 # 因为1 是整型变量 所以a 就是整型变量
a = 1.2 # 现在 a 是浮点类型
# 例如 变量赋值
a = 1
a = 1 + 1
# 如果b也赋值为1
b = 1
#或者
b = a
b = a * 3
a = b = c = 4 # 这种赋值方法也是可行的
# 同时对多个变量进行赋值
a,b = 1,2 # 一一对应
print("a = ",a,"b = ",b)
# a = 1 b = 2
# a的值和b的值进行调换
a,b = b,a
print("a = ",a,"b = ",b)
# a = 2 b = 1
# 删除一个变量
del a
a,b
# 报错:NameError: name 'a' is not defined 没有找到 a
常量:不可改变的量
常量不可以在赋值符号的左侧
例如:
a = 6
5 = a
报错:SyntaxError: can't assign to literal # SyntaxError:无法分配给文字
布尔类型
布尔类型 bool
True(逻辑真) 和 False (逻辑假)
a = 1
b = 3
a > b
# false
逻辑比较语句
< 小于
> 大于
<= 小于等于
>= 大于等于
== 逻辑等于
!= 不等于
x = 2 > 3
y = 2 <= 3
a = 6
b = 3
c = 5
f = a > b
d = a == b
e = a != b
x,y,f,d,e
# False, True, True, False, True
python中支持比较运算符的联系书写
a = 6
b = 3
c = 5
a < b < c # False
a < b > 1.5 # False
b < a > 1.5 # True
b < a > 3 # True
b < a > 8 # False
python中关于True 和 False 的其他规定
0
0.0
0+0j
None值
空的字符串 " "
空的列表 [ ]
空的集合 set( )
空的元组 ( )
空的字典 { }
Nonetype
值:None
作用: 无意义,用作占位
函数无返回值则返回一个None表示
有时候用作形参的默认值