Python基础(1) 数值类型和运算符
1 注释
作用:(1)增加程序的可读性;(2)作为调试用;(3)提高团队的合作效率。
类型:(1)单行注释:#号开头,右边的所有内容当作说明;(2)多行注释:以三对单引号('''注释内容''')将注释包含起来。
2 变量和数据类型
2.1 变量
2.1.1 变量的定义
变量就是一个存储数据的内存空间对象。定义一个变量,即向内存申请一个带地址的访问空间对象,用来存储数据,通过变量名找到(指向)这个值。
2.1.2 变量的命名规则
(1)变量名只能包括字母、数字和下划线。变量名不能以数字开头。
(2)变量名不能包括空格,可以使用下划线来分隔多个单词。
(3)不能使用Python保留的关键字及内置函数名作变量名,例如,用print作变量名是不允许的。
(4)变量名要尽量简短及具描述性,尽量做到短小精悍,见名知义。
(5)Python中变量名是区分大小写的,例如,Name和name是两个不同的变量名。
(6)建议使用驼峰命名法,驼峰式命名氛围大驼峰(UserName)和小驼峰(userName)。
2.1.3 变量的赋值
(1)Python的变量不需要声明,可直接输入。如果只是写一个变量,没有赋值,那么python认为这个变量没有意义。
print(a) # 未定义,python无法识别
(2)同时定义多个变量,变量名与值用逗号隔开,一一对应。变量类型取决与值的类型。值本身就有类型,不需要声明变量名类型,查看类型用内置函数type()
1 a, b, c = 123, 'hello', True 2 print(type(a)) # <class 'int'> 3 print(type(b)) # <class 'str'> 4 print(type(c)) # <class 'bool'>
(3)查看变量的内存空间存储地址,用id(变量名)方法查看
1 a, b, c = 123, 'hello', True 2 print(id(a)) # 140722503000704 3 print(id(b)) # 2047025963728 4 print(id(c)) # 140722502474064
(4)互换两个变量的值可直接互换变量名
1 a, b, c = 123, 'hello', True 2 a, b, c = c, b, a 3 print(type(a)) # <class 'bool'> 4 print(type(b)) # <class 'str'> 5 print(type(c)) # <class 'int'>
2.1.4 删除变量
删除变量,用 del (变量名) ,但删除的仅是一个指向存储对象的引用,不会删除存储对象。
1 a = 'ABC' 2 b = a # 其实是把'ABC'赋给b 3 del a 4 print(id('ABC')) # 2235458457192 5 print(id(b)) # 2235458457192
注意:Python变量名本身是没有类型的,类型取决于存储对象,而不是变量名,变量名只是一个指向存储对象的引用,存储对象除了存储数据外还有两个头部信息,一个是类型标志符,标志符用来说明存储对象的数据类型,另一个是引用计算器,用来标明当前存储对象有多少个引用指向它,当没有引用指向这个存储对象的时候,存储对象占用的内存空间将会被Python垃圾收集器回收。

2.1.5 常变量
在Python中,没有专门定义常变量的语法,通常用全大写变量名表示,仅是一种提示效果,例如,CITY = "shenzhen" (本质上仍是变量) 。
2.2 数值型(Number)
2.2.1 基本类型
(1)整型(int):Python可以处理任意大小的整数,表示方法和数学上的写法一模一样;
(2)浮点型(float):小数,小数点的位置是可变的;
(3)复数(complex):一个实数和一个虚数的组合;
(4)布尔型(bool):特殊的整型,取值范围只有两个值,True或False。
1 a = 123 2 b = 6223372036854775807 3 c = 3.45 4 d = 2-5j 5 e = True 6 print(type(a)) # <class 'int'> 7 print(type(b)) # <class 'int'> 8 print(type(c)) # <class 'float'> 9 print(type(d)) # <class 'complex'> 10 print(type(e)) # <class 'bool'>
2.2.2 数值运算
(1)算术运算符:加+、减-、乘*、除/、求余%、幂**、整除//
1 a, b = 10, 20 2 print(a + b) # 加 30 3 print(a - b) # 减 -10 4 print(a * b) # 乘 200 5 print(b / a) # 除 2.0 6 print(b % a) # 取模(求余) 0 7 print(a ** b) # 幂 100000000000000000000 8 print(5 // 2) # 整除 2
(2)赋值运算符:+=、-=、*=、/=、%=、**=、//=
1 a, b = 5, 2 2 # a += b # 7 加赋值 3 # a -= b # 3 减赋值 4 # a *= b # 10 乘赋值 5 # a /= b # 2.5 除赋值 6 # a %= b # 1 取余赋值 7 # a **= b # 25 幂赋值 8 a //= b # 2 整除赋值 9 print(a)
(3)比较运算符:==、!=、>、<、>=、<=
1 a, b = 10, 20 2 print(a == b) # False 一个=表示赋值 3 print(a != b) # True 4 print(a > b) # False 5 print(a < b) # True 6 print(a >= b) # False 7 print(a <= b) # True
(4)逻辑运算符:与and、或or、非not
1 a, b = 10, 20 2 print(a>b and a<0) # False 所有条件同时为True,则为True,否则为False 3 print(a>0 or b>0) # True 所有条件同时为Falsse,则为False,否则为True 4 print(not b) # False 非0返回False 5 print(not 0) # True 0返回True,因为0代表False,not 0则为True
(5)位运算符:位与&、 位或| 、位非^、取反~、左移<<、右移>>
1 a, b = 60, 13 # 二进制:a=00111100,b=00001101 2 print(a & b) # 位与 12 二进制:0001100 3 print(a | b) # 位或 61 二进制:00111101 4 print(a ^ b) # 位非 49 二进制:00110001 5 print(~a) # 取反 -61 二进制:11000011(对应十进制为195) 6 print(a << 2) # 左移 240 二进制:11110000 7 print(a >> 2) # 右移 15 二进制:00001111
浙公网安备 33010602011771号