python的数据类型有如下:
1、数字
数字类型是python中常用的类型,她是不可变的,创建一个数字很简单可以用一个变量来接收它
num1=2 `在这里插入代码片` #创建变量num1
num2=9 #创建变量num2
数字的类型分为如下几类:
整型:int,不带小数点,正负数都可以,如 23,45,
浮点型:float,带小数点,如3.3454。或者用科学计数法表示(2.5e2 = 2.5 x 102 = 250)
布尔型:bool,0和1
复数:complex,包含实数和虚数,用a + bj,或者complex(a,b)表示
数字类型转换:
int(a) # 把a转为整数型
float(b) # 把b转为浮点型
数字的运算: +
、-
、*
、/
、=
–赋值运算
数字相关函数:主要包含数字运算相关的函数,例如求绝对值,平方根等,
常用的数学函数如下:
abs(x)
返回数字的绝对值,如abs(-10) 返回 10
exp(x)
返回e的x次幂(ex),如math.exp(1) 返回2.718281828459045
fabs(x)
以浮点数形式返回数字的绝对值,如math.fabs(-10) 返回10.0
floor(x)
返回数字的下舍整数,如math.floor(4.9)返回 4
log(x)
如math.log(math.e)返回1.0,math.log(100,10)返回2.0
log10(x)
返回以10为基数的x的对数,如math.log10(100)返回 2.0
max(x1, x2,...)
返回给定参数的最大值,参数可以为序列。
min(x1, x2,...)
返回给定参数的最小值,参数可以为序列。
modf(x)
返回x的整数部分与小数部分,两部分的数值符号与x相同,整数部分以浮点型表示。
pow(x, y)
x**y 运算后的值。
round(x [,n])
--返回浮点数 x 的四舍五入值,如给出 n 值,则代表舍入到小数点后的位数。其实准确的说是保留值将保留到离上一位更近的一端。
sqrt(x)
返回数字x的平方根。
2、字符串
字符串的概念:字符串是 Python 中最常用的数据类型。它是不可变的,一般使用单引号来创建字符串。
str1='Hello' #单引号的字符串
str2="Hello" #双引号的字符串
str3='''Hello''' #三引号的字符串
字符串中本身有单引号时,外面用双引号
str1="It's OK"
字符串中本身有双引号时,外面用单引号
str2='He said:"Are you ok?"'
三引号: 用三个单引号’‘’ ‘’'或者三个双引号"“” “”"
应用:
1.在换行比较多的情况下,可以用三引号,这样就不需要手动输入换行符
2.字符串中既有单引号,也有双引号的场合
3.用于函数或方法的注释
str3='''独坐幽篁里 弹琴复长啸 深林人不知 明月来相照'''
print(str3)
def fun1():
''' :return: '''
字符串中的转义符
# \n 换行符 \t 制表符
filepath='D:\note1.txt'
print(filepath) #这样打印,filepath中的\n进行了转义
#方案一 在\前面再加一个\,后面的\不进行转义
filepath='D:\\note1.txt'
#方案二 在字符串外面加一个r,字符串中的所有转义符均不进行转义
filepath=r'D:\note1.txt'
#方案三 表示路径时,可以用/代替\
filepath='D:/note1.txt'
*字符串的拼接
print('1'+'6') #1和6拼接,打印16
print('1'+6) #字符串与数字拼接,报错
print('1'*6) #表示将字符串打印6次
a=5
b='6'
print(a+int(b)) #int(),将对象转为整数型,float(),将对象转为浮点型,str()将对象转为字符串型
字符串的下标
#下标以 0 为开始值,-1 为从末尾的开始位置。
str6='abcdefg'
print(str6[5]) #取得第5位的值,f
print(str6[-2]) #取得倒数第二位的值,f
str6[0]='q' #字符串是不可变对象,不可以通过下标修改某个位置的值
字符串的切片
[起始值:终止值:步长] 包含起始值,不包含终止值 步长默认为1,
print(str6[0:3]) #abc
print(str6[-7:-4]) #abc
print(str6[:-4]) #起始值不写,表示从头开始取值
#步长为正数时,从左向右取值,步长为负数时,从右向左取值
print(str6[2::-1]) #终止值不写,表示取到后面所有的值
print(str6[:]) #全部取值,注意切片是一个新的对象,不影响原对象的值
print(str6[::2]) #aceg
切片是一个新对象,不影响原对象
str9='aabbccddee' str9_new=str9[0:2] print(str9) print(str9_new)
3、列表
列表的概念:常用到的数据结构之一。Python中使用中括号[]来表示列表,它是可改变的,一般通过下标改变
列表可以存放任意类型的对象
list1=[1,'abc',[10,20],(10,20),{'A':'apple'}]
列表是可变对象
list2=[10,20,30,40,50]
list2[0]=198
1.新增元素
append()方法,添加元素到列表末尾
list2.append(60)
2.插入元素
insert()方法,添加元素到指定位置
list2.insert(1,60)
3.列表拼接
extend()方法,列表的拼接
list2_1=[100,200]
list2_2=[300,400]
list2_1.extend(list2_2)
print(list2_1)
4.删除元素
- pop()方法,默认删除列表末尾的元素,也可以指定位置进行删除
list3=[100,200,300,400,500,500]
list3.pop(0)
print(list3)
- remove()方法,根据值进行删除
list3.remove(500)
print(list3)
- del的方式进行删除
del list3[2]
print(list3)
5、列表的切片
列表的切片,也是一个新的对象,不影响原列表的值
list6=[11,22,33,44,55,66]
print(list6[0:3])
print(list6[-6:-3])
print(list6[-4::-1])
4、元组
元组与列表类似,都可以使用下标与切片,但是元组是不可变对象,不能进行增删改
tuple1=(11,22,33,44,55,66)
tuple2=(10,) #当元组中只有一个值时,加个逗号
print(type(tuple2))
注意:如果元组中有子列表,子列表的值可以修改
tuple3=(10,20,30,40,50,[1,2])
tuple3[5][0]=99
print(tuple3)
5、字典
字典是非常常用的一种数据结构,它与json格式的数据非常相似,核心就是以键值对的形式存储数据,关于Python中的字典做如下四点说明:
1.构造字典对象需要用大括号表示 {},每个字典元素都是以键值对的形式存在,并且键值对之间用英文状态下的’‘:’'隔开
2.键在字典中是唯一的,不能有重复,对于字符型的键需要用引号引起来。值可以是单个值,也可以是多个值构成的列表,元组或字典
3.字典不再是序列,无法通过位置索引完成元素值的获取,只能通过键索引实现。
4.字典是可变对象,字典是无序的
如下
dict1={'A':'apple','B':'book'}
dict2={'B':'book','A':'apple'}
print(dict1==dict2)
列表是有序的
list1=[10,20]
list2=[20,10]
print(list1==list2) #列表是有序的,输出为真
说明:字典的键可以存放不可变对象,不可以存放可变对象 字典的值可以存放任意对象 字典属于可变对象,可以进行增删改
字典的键是唯一的
dict6={'A':'apple','A':'ace'} #保存的是{'A':'ace'}
print(dict6)
新增:字典的新增与修改的语句是一样的,如果字典内已经有同名的键,则修改,如果没有,则新增
dict9={'A':'apple'}
dict9['hyntehwrtgrf34nthbg']='3j5hg45umryjbtrghmryjbg' #字典中没有对应的键,所以新增
dict9['A']='ace' #字典中有对应的键,所以进行修改
print(dict9)
update()方法,可以添加或修改多个键值对
dict9.update({'C':'cake','D':'duck','E':'earth'})
print(dict9)
del 删除字典中的键值对
del dict9['E']
print(dict9)
清空字典中的键值对
dict10={'A':'apple'}
dict10={} #这种方式,内存地址发生了变化,相当于重新定义了一个字典
dict10.clear() #这种方式,内存地址不变
遍历字典中的键值对
dict11={'老虎':'WOW!!','羊':'咩~~','狗':'汪汪汪'}
for k,v in dict11.items():
print(k,v)
遍历键
for k in dict11.keys():
print(k)
遍历值
for v in dict11.values():
print(v)
判断某个对象是否在字典中,根据键判断,而不是值
dict100={'ABC':'ABCDE'}
print('ABCDE' in dict100)
json模块:json格式,非常像字典的字符串,
json.loads(str1)
把json转换为字典
json.dumps(str1_new)
将字典转为json
str1='''{
"aac003" : "tom",
"tel" : "13959687639",
"crm003" : "1",
"crm004" : "1"
}'''
import json
str1_new=json.loads(str1) #将json格式转为字典
print(type(str1_new))
print(str1_new['tel'])
str2=json.dumps(str1_new) #将字典转为json
print(type(str2))
6、集合set
集合(set)是一个无序的不重复元素序列。可以进行交集、并集、差集等常见的集合操作,使用大括号 { } 创建集合,元素之间用逗号 , 分隔, 或者也可以使用 set() 函数创建集合。
set1 = {value01,value02,...} #创建方式1
set(value1,value2,...) # 创建方式2
1、添加元素 add( x )
thisset = set(("Google", "Runoob", "Taobao"))
thisset.add("Facebook")
print(thisset)
输出结果:
{'Taobao', 'Facebook', 'Google', 'Runoob'}
**2、移除元素 ** remove( x ),pop()
thisset.remove("Taobao") # 指定移除
thisset.pop() #随机移除
3、清空集合 clear()
thisset.clear()
判断元素是否在集合中存在 :in
thisset = set(("Google", "Runoob", "Taobao"))
"Runoob" in thisset #输出为真
以上是python 中数据类型的基本六个类型,一些简单的使用以及说明,后续篇幅继续介绍python的语法。