数据转换在日常开发中使用频次也是非常高的,了解一下隐式类型转换和显示类型转换。
隐式类型转换:我们对两种不同类型的数据做运算,例如整数类型和浮点型运算,这时候我们需要把整数转换为浮点型,避免数据丢失。
显式类型转换:在显式类型转换中,用户会将对象的数据类型转换为所需的数据类型。我们使用 int()、float()、str() 等预定义函数来执行显式类型转换。
int() 强制转换为整型:
x = int(1) # x 输出结果为 1
y = int(2.8) # y 输出结果为 2
z = int("3") # z 输出结果为 3
#float() 强制转换为浮点型:
x = float(1) # x 输出结果为 1.0
y = float(2.8) # y 输出结果为 2.8
z = float("3") # z 输出结果为 3.0
w = float("4.2") # w 输出结果为 4.2
#str() 强制转换为字符串类型:
x = str("s1") # x 输出结果为 's1'
y = str(2) # y 输出结果为 '2'
z = str(3.0) # z 输出结果为 '3.0'
常用的运算符大致可以分为算术运算符、赋值、比较和逻辑运算符、二进制与位运算符还有其它运算符。
1、算术运算符
算术运算符,顾名思义,就是在程序中进行数字运算,有加、减、乘、除等,通过运算求得结果。你可以对照后面例子看一下。
>>> 5 + 4 # 加法
9
>>> 4.3 - 2 # 减法
2.3
>>> 3 * 7 # 乘法
21
>>> 2 / 4 # 除法,得到一个浮点数
0.5
>>> 2 // 4 # 除法,得到一个整数
0
>>> 17 % 3 # 取余
2
>>> 2 ** 5 # 乘方
32
现在,让我们尝试用 Python 进行简单的运算。假设我的语文成绩是 86,数学成绩是 72,英语成绩是 90,那么三科的平均分是多少呢?计算过程如下,是不是挺简单的?
print((86+72+90)/3)
>>>82.6666666666667
2、赋值与比较
在给变量命名时,变量名称的命名方式是全部使用小写字母,并用下划线区分单词。
正确的命名方式如下。
my_height = 58
my_lat = 40
my_long = 105
多个变量同时赋值时,代码如下。
x = 3
y = 4
z = 5
#等同于
x, y, z = 3, 4, 5
赋值运算符
变量的比较
3、二进制与位运算符 *
4、其它运算符与优先级问题
我们学数学都知道乘法优先于加减法。那么在同时有很多个运算符号的情况下,Python 的处理顺序是什么样的呢?总体顺序如下。
按照这个优先级规则,我们通过下面的练习来体会一下执行过程。
a = 20
b = 10
c = 15
d = 5
e = (a + b) * c / d #( 30 * 15 ) / 5
print "(a + b) * c / d 运算结果为:", e
e = ((a + b) * c) / d # (30 * 15 ) / 5
print "((a + b) * c) / d 运算结果为:", e
e = (a + b) * (c / d); # (30) * (15/5)
print "(a + b) * (c / d) 运算结果为:", e
e = a + (b * c) / d; # 20 + (150/5)
print "a + (b * c) / d 运算结果为:", e
>>>
(a + b) * c / d 运算结果为: 90
((a + b) * c) / d 运算结果为: 90
(a + b) * (c / d) 运算结果为: 90
a + (b * c) / d 运算结果为: 50
虽然 Python 运算符有优先顺序仍然不建议你过分依赖它,因为这会降低程序的可读性。所以在写代码时,我们尽量不要让表达式太复杂。如果表达式确实很复杂,你可以把它分成几个步骤。尝试不依赖优先级规则,而是使用“()”来控制表达式的执行顺序。
标签:类型转换,输出,运算,结果,Python,float,运算符 From: https://blog.51cto.com/key3feng/9233343