变量、运算符与数据类型
变量、运算符与数据类型
- 注释:
(1)单行注释:#
(2)多行注释:三引号之间的所有内容被注释,区间注释,可以是’’’ ‘’'或是""" “”" - 运算符:
(1)算术运算符
+、-、、/(除)、//(整除)、%(取余)、**(幂)
(2)比较运算符
(3)逻辑运算符
and、or、not(与、或、非)
(4)位运算符
(5)三元运算符
(6)其它运算符
in:存在; not in:不存在
is:是; not is:不是
这里要注意is和的区别。
is是说两个对象一样,包括它们的属性;而则仅表明它们的值相同。
【例1】比较的两个变量均指向不可变类型。
a = “hello”
b = “hello”
print(a is b, a ==b) True True
printa is not b, a != b) False False
可以看出,若两个变量为字符串等不可变类型,则它们的属性相同;若两个变量为列表等可变类型,它们的属性就不同。
【例2】比较的两个变量均指向可变类型。
a = [“hello”]
b = [“hello”]
print(a is b, a == b) False True
print(a is not b, a !=b) True False
注意:
is, is not比较的是两个变量的内存地址
==, !=对比的是两个变量的值
运算符的优先级:先算术运算,再逻辑运算。 - 变量和赋值
- 数据类型与转换
通过type()函数查看变量的类型(class),数据的类型有整型、浮点型、布尔型。
浮点型:
有时候,我们想要保留浮点型的小数点后n位。可以用decimal包里的Decimal对象和getcontent()方法来实现。
import decimal
from decimal import Decimal
pytho里面有很多用途广泛的包,用什么就引进(import)什么。包也是对象,可以用上面提到的dir(decimal)来查看其属性和方法。
getcontent()显示了Decimal对象的默认精度值是28位(prec=28)。
【例】a = decimal.getcontent()
b = Decimal(1)/ Decimal(3)
结果为28位小数。
使1 / 3保留4位,用个体content().prec来调节精度。
decimal.getcontent().prec = 4
c = Decimal(1) / Decimal(3) —— 0.3333
布尔型:
x只要不是整型0,浮点型0.00,以及空的变量(空的字符串、列表、元组、字典、集合),bool(x)就是True,否则就是False。
isinstance(object, classinfo):判断一个对象是否为一个已知的类型。
练习题:
1.怎样对python中的代码进行注释?
2.python有哪些运算符,这些运算符的优先级是怎样的?
3.python 中 is, is not 与 ==, != 的区别是什么?
4.python 中包含哪些数据类型?这些数据类型之间如何转换?
答案:
- (1)单行注释:#
(2)多行注释:三引号,三个单引号或三个双引号都可以 - 算术运算符、逻辑运算符、比较运算符、位运算符、三元运算符、其它运算符等。先是算术运算符(一元运算符优于二元运算符),再比较运算符,再逻辑运算符。
- is、is not对比的是两个变量的内存地址。
、!=对比的是两个变量的值。
如果两个变量为不可变类型,则is与,以及is not与!=完全等价。如果两个变量为不可变类型,则is与==,以及is not与!=不一样。 - 整型、浮点型、布尔型。
转换整型:int()
转换浮点型:float()
转换字符型:str()