python中变量不需要事先声明,这是因为python中的变量是以内容为基准,不像其他语言如c语言是以变量名为基准,所以只要你的数字内容是5,不管你起什么名字,这个变量的 ID 是相同的,同时也就说明了 python 中一个变量可以以多个名称访问。
需要使用时直接赋值即可。python变量是没有类型的,但是对象所指向存储在内存中的数据对象是有类型的。
python数据类型:
1、数字(Number)
2、字符串(String)
3、元祖(Tuple)
4、列表(List)
5、字典(Dictionary)
6、集合(Set)
不可变(内容、长度不能变)数据类型3个:数字、字符串、元祖
可变(内容、长度可变)数据类型3个:列表、字典、集合
需特别注意是:当元祖内部包含可变对象时, 字典或者列表或者集合时,这些对应元素内容是可以变的,如:
执行结果
各数据类型常用方法
数字(Number):不限制大小
整型:
二进制:0b开头
八进制:0o开头
十六进制:0x开头
浮点型:通俗意义上小数位
复数:3+4j,跟数学上定义一致
布尔型:用来表示真假,True、 False,python中布尔值可以当数字使用,True=1 False=0;如果数字当做布尔值使用,0表示False,其他表示True
age=18+True
数据运算
执行结果
字符串(String)
字符串使用''或者“”括起来
字符串截取采用:变量[头下标:尾下标]语法,索引值从0开始,-1表示是从末尾位置开始
+标示字符串相连,*标示字符串复制
通过函数dir(str)可查看字符串类型所有方法。
执行结果
None类型:表示什么都没有,通常用来占位
元祖(tuple)
元祖使用()括起来
tuple1=() 表示空元祖
tuple2=(1,)标示为元祖长度为1个,必须加",",否则python会把它认为为字符串
元祖截取格式,使用方式与字符串类似
变量[头下标:尾下标]
执行结果
列表(list)
列表使用[]括起来,是可变数据类型
列表截取格式,使用方式与字符串类似
变量[头下标:尾下标]
执行结果
集合(set)
集合使用{}括起来,它是由一个或数个形态各异的大小整体组成,构成集合的事务或对象称作元素或成员
集合基本功能是进行成员关系测试或者删除重复元素
可 { } 或者 set() 函数创建集合,创建空集合时使用set{}
执行结果
字典(dictionary)
字典使用{}括起来,它是一个无序的:键:值 集合,使用键进行获存取,键必须使用不能变动的数据类型,同一个字典中键必须唯一
执行结果
数据类型转换
以下几个内置的函数可以执行数据类型之间的转换。这些函数返回一个新的对象,表示转换的值
执行结果
表达式:由一个或者多个数字或者变量或者运算符合成的一行代码
运算符:将一个值或多个值经过运算得到一个新的值的过程叫运算,操作运算的符号就运算符
运算符分类:
算数运算符
比较或关系运算符
赋值运算符
逻辑运算符
位运算符
成员运算符
身份运算符
算数运算符:用来进行算数运算的符号,加减乘除,python没有自增自减运算符
算数运算符基本与数学上一致。
特别:除法:普通除、地板除、取模除
print(9 / 2) print(9 // 2) #地板除,向下取整 print(9 % 2)
取余是数学上概念,取模是计算机上的术语
取余与取模在除数和被除数符号相同时一样,在符号不同时有区别
取余:商是向0方向舍入;取模:商是向负无穷方向舍入
如:c=a/b
a=9,b=-4
取余时:c=-2;取模时c=-3
求余d=a-b*c=9-(-2*-4)=1;取模d=a-b*c=9-(-3*-4)=-3
幂运算
print(9 ** 2)
比较运算符:对两个内容进行比较,得到结果为布尔值,True/False
== != >= <= > <
a = 3 == 4 print(a) #False
赋值运算符
a = 4 b = c = 5 c + = 1 #所有的数学运算符都可以缩写,+= -+ *= **= /= ,注意python 没有自增++ 自减--
逻辑运算:对布尔变量或者值进行算数运算,与:and;或:or;非:not,python中没有异或;
运算规则:
and看做乘法,or看做加法;
True看做1,False看做0;
逻辑运算就可以看成算数运算
最后结果0就是False,否则就是True
逻辑运算短路问题:逻辑运算是按照从左到右进行运算,一旦能够确定式子的值就不在继续运算,直接返回结果值
a = True b = True c = False aa = a or b and c and (a and c)
成员运算符:用来检查一个成员是否在某个集合里面,返回结果是布尔值,in 、not in
L = [1 , 2, 3, 4, 5] c = 'a' in L print(c)
身份运算符:用来确定2个变量是否是同一个变量, is、 is not
a = 3 b = 99999 c = a is b print(c) #False a = 9999999999 b = 9999999999 c = a is b print(c) #True
运算符优先级:
小括号具有最高优先级
** 指数
~ 按位翻转(位运算)
* / % // 乘 除 取模 取整除
+ - 加 减
>> << 右移 左移 (位运算)
& 位
^ | 位
< > >= 比较运算
== != <> 等于运算
= %= += -+ /= *= **=赋值运算
is not is 身份运算
in not in 成员运算
and or not 逻辑运算
参考来源:https://www.runoob.com/python3/python3-data-type.html