python笔记之数据类型

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

原文地址:https://www.cnblogs.com/heertong/p/12041163.html