600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > Python全栈开发【基础-11】基本数据类型内置方法

Python全栈开发【基础-11】基本数据类型内置方法

时间:2022-08-08 16:43:30

相关推荐

Python全栈开发【基础-11】基本数据类型内置方法

专栏介绍:

本专栏为Python全栈开发系列文章,技术包括Python基础、函数、文件、面向对象、网络编程、并发编程、MySQL数据库、HTML、JavaScript、CSS、JQuery、bootstrap、WSGI、Django、Flask、后期运维、git使用、Linux运维、Python结合Shell结合场景开发自动化脚本等一系列文章. 从入门到实战。 文章内容来自博主学习笔记,修整发布。

在本博客中,python是一个系列文章,如果你还不明白Python的相关概念,强烈建议从Python系列文章中的第一篇开始阅读,否则你可能无法理解这篇文章中涉及到的部分名词。

全栈目录导航:https://yankerp./article/details/126314634

目录:

专栏介绍:一、列表1.1 列表的作用:1.2 列表的定义1.3 列表转换1.3.1 字符串:1.3.2 字典1.3.3 元祖:1.4 内置方法1.4.1 按照索引取值,正向取反向取:1.4.2 切片操作(顾头不顾尾的操作)1.4.3 长度:(len)1.4.4 成员运算符in & not in1.4.5 追加[append]1.4.6 插入值1.4.7 删除值1.4.8 列表循环2.1 列表的其他方法:2.1.1 count方法:2.1.2 reverse方法:2.1.3 clear方法:2.1.4 sort方法:2.1.5 结合reverse升序降序:2.1.6 copy浅拷贝2.1.7 index方法:二、元组(不可变的列表)2.1 作用2.2 定义2.3 类型转换2.3.1 字符串:2.3.2 字典:2.3.3 列表:2.4 内置方法2.4.1 按索引取值「正向取、反向取」2.4.2 切片2.4.3 长度2.4.4 成员运算符in not in2.4.5 循环2.5 元组的内置方法:三、字典3.1 作用3.2 定义3.3 类型转换3.4 内置方法3.4.1 按key取值可存可取3.4.2 长度len3.4.3 成员运算符 in和not in3.4.4 删除3.4.5 clear:直接清空字典3.4.6 setdefault方法3.4.7 update方法总结:结束:

一、列表

1.1 列表的作用:

列表的作用就是存储一个或者多个任意类型的数据类型,通过index可查可取得一种数据类型

1.2 列表的定义

l = [111,222,333] # l = list([111,222,333])

列表的定义原则上来讲就是list()定义一个列表

1.3 列表转换

列表可以将一切可以通过for循环的数据类型转换为列表,实际上list列表的转换就是调用了一个for循环来实现的。

1.3.1 字符串:

res = list("my name is yanzan")l = []for x in "my name is yanzan":l.append(x)

1.3.2 字典

字典:res2 = list({'name' : "yanzan", 'password' : ""})# print(type(res2), res2)

1.3.3 元祖:

>>> print(list((000,111,222,333))... )[0, 111, 222, 333]>>>

1.4 内置方法

1.4.1 按照索引取值,正向取反向取:

>>> name = ['aaa' ,'bbb']>>> name[1]'bbb'>>> name[-1]'bbb'>>> name[0]'aaa'>>>

可以按照index来进行赋值操作:

>>> name = ['aaa' ,'bbb']>>> name[1] = 333>>> print(name)['aaa', 333]

当index不存在的时候会直接报错,无论是取值还是赋值都是会报错的。

1.4.2 切片操作(顾头不顾尾的操作)

>>> name = ['aaa' ,'bbb','ccc','ddd','eee','fff','ggg']>>> name[0:]['aaa', 'bbb', 'ccc', 'ddd', 'eee', 'fff', 'ggg']>>> name[1:]['bbb', 'ccc', 'ddd', 'eee', 'fff', 'ggg']>>> name[0:6:2]['aaa', 'ccc', 'eee']>>>

反向切片:

>>> name = ['aaa' ,'bbb','ccc','ddd','eee','fff','ggg']>>> name[:-1]['aaa', 'bbb', 'ccc', 'ddd', 'eee', 'fff']>>>

1.4.3 长度:(len)

>>> name = ['aaa' ,'bbb','ccc','ddd','eee','fff','ggg']>>> len(name)7>>>

1.4.4 成员运算符in & not in

>>> name = ['aaa' ,'bbb','ccc','ddd','eee','fff','ggg']>>> print('aaa' in name)True>>> print('aaa' not in name)False>>>

1.4.5 追加[append]

>>> info = ['aaa','bbb']>>> info.append('ccc')>>> print(info)['aaa', 'bbb', 'ccc']>>>

1.4.6 插入值

>>> info = ['aaa','bbb']>>> info['aaa', 'bbb']>>> info.insert(2, 'ccc')>>> print(info)['aaa', 'bbb', 'ccc']>>>

insert 就是插入值,以上的意思就是在index 2号索引插入一个ccc的字符串。如果insert的index索引号写的不存在这个索引也没有关系,默认还是在末尾添加插入一个值。

插入值的一个extend的方法:

>>> info = ['aaa','bbb']>>> info['aaa', 'bbb']>>> info2 = ['ccc','ddd','fff']>>> info.extend(info2)>>> print(info)['aaa', 'bbb', 'ccc', 'ddd', 'fff']>>>

extend方法是将一个列表其中的数据追加到另外一个列表当中

1.4.7 删除值

方式一:通过del方式

>>> info = ['aaa','bbb','ccc']>>> info['aaa', 'bbb', 'ccc']>>> del(info[0])>>> print(info)['bbb', 'ccc']

del 删除列表当中的index,若在del删除index过程当中index并不存在则直接报错。

方式二:通过list.pop

>>> info = ['aaa','bbb','ccc']>>> info.pop(1)'bbb'>>> info.pop(9)Traceback (most recent call last):File "<stdin>", line 1, in <module>IndexError: pop index out of range>>>

使用list.pop的方式通过pop括号内填写index值,若index值存在则进行删除并且返回删除的值信息,若index不存在则直接报错。

方式三:list.remove方法

>>> info = ['aaa','bbb','ccc']>>> info.remove('aaa')>>> info.remove('bbb')>>> info.remove('ccc')>>> info.remove('ddd')Traceback (most recent call last):File "<stdin>", line 1, in <module>ValueError: list.remove(x): x not in list>>>

remove删除列表当中的元素,remove是通过列表的值删除,而不是通过index去删除、若删除的元素不存在则直接报错。

在使用列表删除的功能当中使用remove和pop的是最多的,一个是可以通过index删除并且有返回值,另外一个是通过remove删除指定的一个值。

1.4.8 列表循环

>>> info = ['aaa','bbb','ccc']>>> for x in info:...print(x)... aaabbbccc>>>

2.1 列表的其他方法:

info.count()

info.reverse()

info.clear()

info.sort()

info.copy()

info.index()

2.1.1 count方法:

统计这个aaa字符串在这个列表中有多少个

>>> info = ['aaa','bbb','ccc','ddd']>>> info.count('aaa')1>>>

2.1.2 reverse方法:

reverse方法是将列表当中的元素反过来。

>>> info.reverse()>>> print(info)['ddd', 'ccc', 'bbb', 'aaa']

2.1.3 clear方法:

清空列表

>>> info = ['aaa','bbb','ccc','ddd']>>> info.clear()>>> info[]

2.1.4 sort方法:

排序

>>> info = [222,111,333,666,999,444,1.1,2.2,0.1]>>> info.sort()>>> info[0.1, 1.1, 2.2, 111, 222, 333, 444, 666, 999]>>>

2.1.5 结合reverse升序降序:

>>> info = [222,111,333,666,999,444,1.1,2.2,0.1]>>> print(info.sort(reverse=False))None>>> info.sort()>>> print(info)[0.1, 1.1, 2.2, 111, 222, 333, 444, 666, 999]>>> info.sort(reverse=False)>>> info[0.1, 1.1, 2.2, 111, 222, 333, 444, 666, 999]>>> info.sort(reverse=True)>>> info[999, 666, 444, 333, 222, 111, 2.2, 1.1, 0.1]>>>

2.1.6 copy浅拷贝

>>> info = [222,111,333,666,999,444,1.1,2.2,0.1]>>> info2 = info.copy()>>> info2[222, 111, 333, 666, 999, 444, 1.1, 2.2, 0.1]>>>

2.1.7 index方法:

>>> info = [222,111,333,666,999,444,1.1,2.2,0.1]>>> info.index(0.1)8>>>

index方法就是查看括号中内容在列表当中的index是多少。查看位置。

二、元组(不可变的列表)

2.1 作用

元组的作用主要是用来读数据用,因为元组属于不可变类型,它不像列表一样可以存也可以取也可以改,元组是不可改变的。只能用于读,不可以用于改

2.2 定义

>>> infoname = ('yanzan', 'zhangsan', 'lisi') # infoname = tuple('yanzan','zhangsan','lisi,)>>> print(infoname, type(infoname))('yanzan', 'zhangsan', 'lisi') <class 'tuple'>>>>

2.3 类型转换

tuple和list的类型转换都是一样的,都是可以将凡是能够通过for循环循环的数据类型都可以进行转换

2.3.1 字符串:

>>> name = 'yanzan'>>> tuple(name)('y', 'a', 'n', 'z', 'a', 'n')>>>

2.3.2 字典:

>>> nameinfo = {'name':'yanzan','age':19}>>> tuple(nameinfo)('name', 'age')>>>

2.3.3 列表:

>>> nameinfo = ['yanzan','zhangsan','lisi']>>> tuple(nameinfo)('yanzan', 'zhangsan', 'lisi')>>>

2.4 内置方法

2.4.1 按索引取值「正向取、反向取」

>>> name2('yanzan', 'zhangsan', 'lisi')>>> name2[0]'yanzan'>>> name2[-1]'lisi'>>>

2.4.2 切片

>>> name2('yanzan', 'zhangsan', 'lisi')>>> name2[0:]('yanzan', 'zhangsan', 'lisi')>>> name2[:-1]('yanzan', 'zhangsan')>>>

2.4.3 长度

>>> name2('yanzan', 'zhangsan', 'lisi')>>> len(name2)3>>>

2.4.4 成员运算符in not in

>>> name2('yanzan', 'zhangsan', 'lisi')>>> print('yanzan' in name2)True>>> print('yanzan' not in name2)False>>>

2.4.5 循环

>>> name2('yanzan', 'zhangsan', 'lisi')>>> for x in name2:...print(x)... yanzanzhangsanlisi>>>

2.5 元组的内置方法:

index: 是查看元组当中zhangsan这个字符index在哪里它的一个位置count:是查看lisi在元组当中出现了多少次或者有几个

>>> name2('yanzan', 'zhangsan', 'lisi')>>> name2.count('lisi')1>>> name2.index('zhangsan')1>>>

三、字典

3.1 作用

字典也是存储数据值的,一个字典当中可以存放任意的数据类型,和列表不同的是字典是具备有描述信息,可以更方便的存储数据

3.2 定义

nameinfo = {'name' : 'yanzan','age' : 19}

3.3 类型转换

nameinfo = [['name', 'yanzan'],['age', 19]]print(dict(nameinfo))

3.4 内置方法

3.4.1 按key取值可存可取

>>> name = {'name':'yanzan','age':19}>>> name['name'] = 'zhangsan'>>> name['url'] = ''>>> name{'name': 'zhangsan', 'age': 19, 'url': ''}>>>

以上如果key存在的话会直接更改key对应的值,若这个key不存在的话会直接添加key对应值。

3.4.2 长度len

>>> name{'name': 'lisi', 'age': 19}>>> len(name)2

len在字典当中是查看有多少个key

3.4.3 成员运算符 in和not in

{'name': 'yanzan', 'age': 19, 'url': 'www'}>>> print('yanzan' in nameinfo)False>>> print('name' in nameinfo)True>>>

成员运算符in在字典当中是查看有没有这个key而不是value值

3.4.4 删除

通用的删除方式:del

>>> nameinfo{'name': 'yanzan', 'age': 19, 'url': 'www'}>>> del(nameinfo['name'])>>> nameinfo{'age': 19, 'url': 'www'}>>>

pop方式

>>> nameinfo{'name': 'yanzan', 'age': 19, 'url': 'www'}>>> nameinfo.pop('name')'yanzan'>>> nameinfo.pop('name')Traceback (most recent call last):File "<stdin>", line 1, in <module>KeyError: 'name'>>>

字典当中的pop和列表一样,都是用来删除的并且能返回被删除的值信息,如果pop括号内的key不存在的话会直接报错

pop.item方式

>>> nameinfo{'age': 19, 'url': 'www'}>>> nameinfo = {'name':'yanzan','age':19, 'url' : 'www'}>>> nameinfo.popitem()('url', 'www')>>> nameinfo.popitem()('age', 19)>>> nameinfo.popitem()('name', 'yanzan')

pop.items方式就是随机删除,删除后会返回删除的key和value都会一起返回。返回的还是一个元组,元组里面对应的key和value

keys、values、items

n = {}info = {"name" : "yanzan"}info1 = [('name', 'yanzan')]for x in info1:print("这是元组当中第一个元素:{name},第二个元素是{values}".format(name=x[0], values=x[1]))print(x)aaa = ('name', 'yanzan')a, b =aaaprint(f"这是元组的一个解压赋值:{a} {b}") # 验证了这一点

3.4.5 clear:直接清空字典

>>> nameinfo = {'name':'yanzan','age':19, 'url' : 'www'}>>> nameinfo.clear()>>> nameinfo{}>>>

3.4.6 setdefault方法

>>> nameinfo = {'name':'yanzan','age':19, 'url' : 'www'}>>> nameinfo['name'] = 'zhangsan'>>> nameinfo{'name': 'zhangsan', 'age': 19, 'url': 'www'}>>> nameinfo.setdefault('name', 'lisi')'zhangsan'>>> nameinfo{'name': 'zhangsan', 'age': 19, 'url': 'www'}>>> nameinfo.setdefault('aaaaa', 'lisi')'lisi'>>> nameinfo{'name': 'zhangsan', 'age': 19, 'url': 'www', 'aaaaa': 'lisi'}>>>

3.4.7 update方法

>>> xin_dict = {11111111111111 : 22222222222222222}>>> nameinfo.update(xin_dict)>>> nameinfo{'name': 'zhangsan', 'age': 19, 'url': 'www', 'aaaaa': 'lisi', 11111111111111: 22222222222222222}>>>

总结:

列表、元组、字典都为容器类型

列表字典可变类型、元组属于不可变类型

元组是一个不可变类型的列表,只能读不能写不能修改,如果列表当中有很多数据但是永远都不会改变的话可以存放到元组,因为元组占用的内存空间资源少。

结束:

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。