基础数据类型汇总
2022-04-01 11:50:43 0 举报
AI智能生成
基础数据类型汇总
作者其他创作
大纲/内容
list
why
'1 True alex' 像这样的字符串,我如果通过切片或者其他方法将1 True alex取出来,他也只能是字符串,但是我想要得到数字的1,布尔值<br>的True,必须还要转化,是不是很麻烦,对于字符串来说,我只能存储少量的单一的(字符串类型)的数据,不方便,python给咱们也提供了一<br>'1 True alex'<br>像这样的字符串,我如果通过切片或者其他方法将1 True alex取出来,他也只能是字符串,但是我想要得到数字的1,布尔值<br>的True,必须还要转化,是不是很麻烦,对于字符串来说,我只能存储少量的单一的(字符串类型)的数据,不方便,python给咱们也提供了一<br>类数据类型,他能承载多种数据类型,这类数据类型被称作容器类数据类型可以存储大量的数据。列表就属于容器类的数据类型。<br>
what
列表是python中的基础数据类型之一, 其他语言中也有类似于列表的数据类型,比如js中叫数组, 他是以[括起来,每个元素以逗号隔开,而<br>且他里面可以存放各种数据类型比如:li= [ 'alex' ,123,Ture,(1,2,3,' wusir' ),[1,2,3,' 小明’]{ 'name'’ ’alex' }]<br>列表相比于字符串,不仅可以储存不同的数据类型,而且可以储存大量数据,32位python的限制是536870912个元素64位python的限制是11<br>52921504606846975个元素。而且列表是有序的,有索引值,可切片,方便取值。<br><br>
how
1.可用于索引切片<br>
1= ['太白,[1,2,3,], "Wusir,女神]<br>prit(I[1])# [1,2, 3]<br>print([-1]) #女神’<br>print([1:3]) # [1,1 2, 3], 'WuSir]<br>prit:(::2) # [太白,"Wusir]<br>prit(-1:-4:- 1)# [女神,"Wusir,[1, 2, 31]1<br>
2.列表的操作方法
增<br>
append<br>
给列表最后一个位置追加元素<br>
|= [1,2, 'a']<br>l.append(666)<br>print()# [1, 2, 'a', 666]<br>
insert
插入在列表指定位置插入相应的元素<br>
I= [1,2, 'a']<br>l.insert(1,'太白)<br>print() # [1, '太白,2, 'a']<br>
extend
迭代追加,在列表最后迭代追加数据
I= [1,2, 'a']<br>l.extend('太白a)<br>print()<br>
删
pop
通过索引删除列表中对应的元素,该方法有返回值,返回值为删除的元素<br>
I= ["太白,'alex', 'WuSir',女神]<br>ret = l.pop(1)<br>print(ret,I) # alex [太白", 'WuSir, '女神']<br>
remove
通过元素删除列表中的元素<br>
I= ["太白,'alex', 'WuSir',女神]<br>I.remove('alex')<br>print() # [太白','WuSir',女神]<br>1<br>
clear
清空列表<br>
I = ['太白,'alex', 'WuSir',女神]<br>1<br>l.clear()<br>print() # 0]<br>
del
索引删除元素<br>
Jai[1白,alxe, "Wusir, 女神1<br>del 1[2]x<br>print) #[太白; alx,女神]<br>
切片删除元素
1=[太白,alex, "WuSir,女神]<br>del [1:]<br>print()# ['太白"]<br>
切片加步长删除元素
I= [太白,'alex', 'WuSir',女神]<br>del IE::2]<br>print() # ['alex', 女神']<br>
改
按照索引改值
|= [太白", 'alex', "WuSir,女神] <br>|[0] = '男神'<br>print() # [男神", 'alex', "Wusir,“女神]<br>
按照切片改值(迭代着增加)<br>
I = ["太白,'alex', 'WuSir',女神]<br>|[1:3] = 'abcdefg'<br>print() # ['太白','a', 'b','c','d','e', 'f, 'g',女神']<br>
按照切片加步长改值,必须一一对应<br>
I=「!太白alere Wusir,女神]<br>l:2] =‘对应<br>pinto #[对,alxe,应,女神]<br>
查
按照索引查找<br>
按照切片查找
for遍历
1= [太白',[1,2, 3, ], 'WuSir',女神]<br>fori in |:<br>print(i)<br>
where
当你程序中需要设置大量有序的数据时,需要考虑列表<br>
tuple
why
对于容器型数据类型list,无论谁都可以对其增删改查,那么有一些重要的数据放在list中是不安全的, 所以需要一种容器类的数据类型存放重要的<br>数据,创建之初只能查看而不能增删改,这种数据类型就是元祖。<br>
what
元组也是Python的基础数据类型之- -,是以() 括起来,里面的元素可以放所有数据类型,例如:<br>tu=( 'alex' ,123,Ture,(1,2,3,' wusir' ),[1,2,3,' 小明’,],{ 'name' :' alex' })元素以逗号隔开,元组也称作只读列表,元组里面的元组不能<br>更改,只能查看,读取(当然是儿子不能改,孙子可以改)。<br>
how
可以索引切片(加步长)<br>
元组的操作方法<br>
“改”
tu= (1, '太白,['alex',])<br>#元组为只读列表,不能增删改其值,只能查,但是对于改来说是相对的。<br>#直接属于元组的元素不能改,但是间接属于元组的元素不一定,比如上面的alex。<br>#举个不恰当的例子:儿子不能改,孙子可以改。<br>tu[-1][0]=日天'<br>print(tu)<br>
查
可以索引切片(加步长)查找
循环遍历
其他操作方法
index
通过元素找索引(可切片),找到第1个元素就返回,找不到该元素即报错<br>
tu= (太白;,[1, 2,3,], "Wusir, '女神)<br>print(tu.index(太白))#0<br>
count<br>
获取元素在元组里出现的数量<br>
tu= (太白', '太白','WuSir',‘吴超")<br>print(tu.count(太白)) # 2<br>
where
当程序中需要设置一些重要的数据, 这些数据不想让其他人更改,只能查看时,可以将数据存放在元组中<br>
dict
why
1,列表可以存储大量的数据类型,但是如果数据量大的话,他的查询速度比较慢。<br>2,列表只能按照顺序存储,数据与数据之间关联性不强。<br>所以咱们需要引入一种容器型的数据类型,解决上面的问题,这就需要dict字典。<br>
what
先给大家说- -下可变与不可变的数据类型的分类:<br>不可变(可哈希)的数据类型: int, str, bool, tuple。<br>可变(不可哈希)的数据类型: list, dict, set。<br>字典是Python语言中唯一的映射类型。他是以{}括起来,里面的内容是以键值对的形式储存的:<br>Key:不可变(可哈希)的数据类型.<br>Value:任意数据,包括对象等...<br>如: dic = {'name':alex',<br>'age':56,<br>'py8期:"晓梅;方胜君'], <br>真:True,<br>('1',2,3):元祖}<br>字典一般储存的是大量的关联性比较强的数据,3.5包括3.5版本之前, 字典是无序的,3.6之后,创建字典时按照初始顺序排列。<br>字典的查询速度非常快。<br>
how
增<br>
通过键值对直接增加
dic= {'name': '太白','age': 18}<br>dic['weight'] = 75 #没有weight这个键,就增加键值对<br>print(dic) # {'name': '太白','age': 18, 'weight': 75}<br>dic['name'] = 'barry' #有name这个键,就成了字典的改值<br>print(dic) # {'name': 'barry", 'age': 18, 'weight': 75}<br>
setdefault<br>
dic = {'name': '太白','age': 18} <br>dic.setdefault('height',175) #没有height此键,则添加<br>print(dic) # {'name': '太白','age': 18, 'height': 175}<br>dic.setdefault('name','barry") #有此键则不变<br>print(dic) # {'name': '太白,'age': 18, "height': 175}<br>
删
pop
通过key删除键值对,有返回值,可设置返回值<br>
dic = {'name': '太白,'age': 18}<br># ret = dic.pop('name')<br># print(ret,dic) #太白{age': 18}<br>ret1 = dic.pop("n',None)<br>print(ret1,dic) # None {'name':太白,'age': 18}<br>
clear<br>
清空字典
dic = {'name': '太白,'age': 18}<br>dic.clear(<br>print(dic)# {}<br>
del
通过键删除键值对<br>
dic = {'name': '太白','age': 18}<br>del dic['name']<br>print(dic) # {'age': 18}<br>
删除整个字典
del dic
改
通过键值对直接改
dic= {name':‘太白",'age:18}<br>dic['name'] = 'barry<br>pit(di)# {name': brary,'age':18)<br>
update<br>
dic = {'name':‘太白','age': 18}<br>dic.update(sex='男'; height=175)<br>print(dic) # {name':‘太白; 'age': 18, 'sex:男,'height': 175}<br>
dic = {'name': '太白','age': 18}<br>dic.update([(1, 'a),(2, 'b"),(3, 'c'),(4, 'd')])<br>print(dic) # {'name': '太白,'age': 18, 1:'a', 2: 'b, 3:'C', 4:'d'}<br>
dic1 = {"name":"jin"," age'":18,"sex":"male"}<br>dic2 = {"name":"alex","weight":75}<br>dic1.update(dic2)<br>print(dic1) # {'name': 'alex', 'age': 18, 'sex': 'male', 'weight': 75}<br>print(dic2) # {'name': 'alex', 'weight': 75}<br>
查
通过键查找
直接dic[keys](没有会报错)<br>
dic = {'name':太白,'age': 18}<br>print(dic['name']) #太白<br>
get()
dic = {'name': '太白','age': 18}<br>V = dic.get('name'")<br>print(V) # '太白'<br>V = dic.get('name1)<br>print(v) # None<br>V = dic.get('name2";没有此键)<br>print(v) #没有此键<br>
keys()
dic = {'name': '太白,'age': 18}<br>print(dic.keys() # dict keys(['name', 'age ])<br>
values()
dic = {'name': '太白,'age': 18}<br>print(dic.values() # dict values([太白',18])<br>
items()<br>
dic = {'name': '太白','age': 18}<br>print(dic.items() # dict items([('name', '太白"), ('age', 18)])<br>
循环遍历
dic = {'name': '太白','age': 18}<br>for key in dic:<br>print(key)<br>for k,v in dic.items():<br>print(k,v)<br>
操作方法<br>
fromkeys
dic = dict.fromkeys("abcd;太白")<br>print(dic)# {'a': '太白','b': '太白','c': '太白','d:'太白"}<br>dic = dict.fromkeys([1, 2, 3],'太白)<br>print(dic) # {1: '太白,2: '太白,3: '太白}<br>
copy
浅copy
where
当你的程序需要设置大量的关系型数据,并组要求查询速度时,你需要考虑字典<br>
int
why
主要是数字的计算、运算。
what
就是咱们平时用的1,2,3,4,5,6...
how
+ - * / ** // ...
where
需要用到的计算,计时等等
bool
why
程序中有时会判断条件的成立与不成立,作为if或while的条件
what
bool值包括True False
how
1 > 2 and 3 < 4 等逻辑判断,或者一些空数据转化为True 或 False等
where
一般用于一些语句的条件判断
str
why
程序中一般都是和数据打交道,大量的数据存储在数据库,缓存,文件等。但是程序需要将数据提取出来,加工处理。<br>字符串一般存储少量的数据。
what
str : name = ‘chuxin’<br>
how
对字符串进行操作不会改变原字符串!<br>
1.可以用于索引、切片
<font color="#f44336">2.字符串的操作方法</font><br>
<span style="font-size: inherit;"><b><font color="#f44336">strip</font></b></span><br>
创建一个新的字符串:默认去除字符串两边的空格、换行符、制表符。<br>
username = input("请输入姓名:").strip()<br>if username == '初心':<br>print("登录成功")
<font color="#ff9800"><b>lstrip</b></font>
创建一个新的字符串,默认去除字符串左边的空格、换行符、制表符<br>
<font color="#ff9800"><b>rstrip</b></font>
创建一个新的字符串,默认去除字符串右边的空格、换行符、制表符
<font color="#ff0000"><b>split</b></font><br>
str ----> list<br>
返回一个列表,默认以空格分割,可设置分割次数<br>
str1 = '123|456|789'<br>print(str1.split('|')) # ['123','456','789']
rsplit
从右往左分割
<font color="#ff0000"><b>join</b></font><br>
list ----> str(这个方法非常好,不只是将列表转化为字符串一个功能)<br>
返回一个字符串:对iterable进行遍历,通过设置的连接符将iterable的每个元素通过连接符连接到一起形成新的字符串<br>
s1 = 'chuxin'<br>s2 = '_'.join(s1)<br>print(s2) # 'c_h_u_x_i_n'<br><br>lst1 = ['123', 'qwe', '@#']<br>lst2 = '|'.join(lst1)<br>print(lst2) # '123|qwe|@#'<br><br>
<b><font color="#ff0000">replace</font></b>
创建一个新的字符串,将字符串中的旧内容替换成新内容,默认全部替换<br>
name = 'I am chuxin'<br>new_name = name.replace('chuxin', 'SB')<br>print(new_name) # 'I am SB'
<b><font color="#ff0000">format</font></b>
格式化输出
ret = '{}{}{}'.format('name','age',123)<br>ret = '{1}{1}{2}'.format('name','age',123)<br>ret = '{name}{age}{sex}'.format(age=123,name='ruan',sex='male')<br>
<b><font color="#ff0000">encode</font></b><br>
将字符串转化为bytes类型,默认转化成UTF-8的bytes<br>
<font color="#ff9800"><b>count</b></font>
计算某个元素出现的次数
s = 'chuxin'<br>print(s.count('x'))
<font color="#ff9800"><b>index</b></font><br>
通过元素找索引,找到第一个就返回,找不到就报错
ret = 'zxc123'<br>print(ret.index('1'))
<font color="#ff9800"><b>find</b></font>
从左到右通过元素查找索引,找到第一个就返回,找不到就返回-1
ret = 'zxc123'<br>print(ret.find('1'))<br>
<font color="#ff9800"><b>upper</b></font>
创建一个新的全部大写的字符串
s1 = 'zxc'<br>s2 = s1.upper()<br>print(s2) # 'ZXC'
<font color="#ff9800"><b>lower</b></font>
创建一个新的全部小写的字符串
s1 = 'ZXC'<br>s2 = s1.upper()<br>print(s2) # 'zxc'
<font color="#ff9800"><b>isalpha</b></font><br>
判断字符串是否全部为字母
s1 = '初xin'<br>print(s1.isalpha) # True
<font color="#ff9800"><b>isdecimal</b></font>
检测字符串是否全部为十进制数字组成
<font color="#ff9800"><b>islanum</b></font>
检测字符串是否全部为数字和字母组成,返回True或者False
<font color="#ff9800"><b>startswith</b></font>
判断字符串是否为某个指定字符开头,可以切片,返回True或者False
<font color="#ff9800"><b>endswith</b></font>
判断字符串是否为某个指定字符结尾,可以切片,返回True或者False
<font color="#ff9800"><b>capitalize</b></font><br>
创建一个开头大写其余字母小写的新字符串
center
创建一个新的字符串:字符串居中,可设置字符串长度, 可以设置填充物<br>
where
需要存储少量数据,读取文件数据,读取数据库数据时等等<br>
<font color="#ff0000"><b>我们人类可以很容易的分清数字与字符的区别,但是计算机并不能呀,计算机虽然很强大,但从某种角度上看又很傻,除非你明<br>确的告诉它,1是数字,<br>”汉”是文字,否则它是分不清1和<br>'汉’的区别的,因此,在每个编程语言里都会有一个叫数据类型的<br>东东,其实就是对常用的各种数据类型进行了明确的划分,你想让计算机进行数值运算,你就传数字给它,你想让他处理文字,<br>就传字符串类型给他。Python中常 用的数据类型有多种,int bool str list tuple dict set等</b></font><br>
收藏
收藏
0 条评论
下一页