首页 > 其他分享 >7. 基本数据类型的内置方法

7. 基本数据类型的内置方法

时间:2024-07-19 21:51:37浏览次数:7  
标签:info kylian 内置 messi 数据类型 列表 print 方法 字典

1. 列表的内置方法

1.1 优先掌握的内置方法

1.1.1 强制类型转换

可以将可迭代类型转换为列表类型

print(list('messi'))  # ['m', 'e', 's', 's', 'i']
print(list((1, 2, 3)))  # [1, 2, 3]
print(list({4, 5, 6}))  # [4, 5, 6]

list方法在强制转换字典的时候默认转换出来的是字典的键

print(list({'name': 'messi', 'goals': 91}))  # ['name', 'goals']

强调:列表转换成字符串之后无法再重新转回列表

 1.1.2 索引取值

正向索引/负向索引

1.1.3  切片

与字符串切片方法一样

列表[起始索引:终止索引:步长]

a = ['messi', 'ronaldo', 'neymar', 'kylian', 'haaland']
print(a[0:3])  # ['messi', 'ronaldo', 'neymar']
print(a[0:3:2])  # ['messi', 'neymar']
# 将列表顺序翻转
print(a[::-1])  # ['haaland', 'kylian', 'neymar', 'ronaldo', 'messi']

1.1.4 计算长度

len

1.1.5 成员运算

in   /  not in

判断某个元素是否在当前列表中

1.1.6 向列表中添加元素

方式一:添加在列表结尾

a = [1, 2, 3]
a.append(4)
print(a)  # [1, 2, 3, 4]

方式二:插入到指定的索引位置

a = [1, 2, 3]
a.insert(0, 'messi')
print(a)  # ['messi', 1, 2, 3]

方式三:将两个列表整合到一起(扩展列表)

# for循环将两个列表整合到一起
a = [1, 2, 3]
b = [4, 5, 6]
for i in b:
    a.append(i)
print(a)  # [1, 2, 3, 4, 5, 6]
# extend方法将两个列表整合到一起
a = ['messi', 'neymar', 'ronaldo']
b = [1, 2, 3]
a.extend(b)
print(a)  # ['messi', 'neymar', 'ronaldo', 1, 2, 3]

1.1.7 删除列表中的元素

方式一:按照指定的值删除指定的元素remove

a = ['messi', 'neymar', 'ronaldo', 'kylian', 'haaland']
print(a.remove('messi'))  # None  没有返回值
print(a)  # ['neymar', 'ronaldo', 'kylian', 'haaland']

方式二:弹出指定元素pop

a = [1, 2, 3, 4, 5, 6]
# 默认弹出最后一个元素
print(a.pop())  # 6  有返回值
print(a)  # [1, 2, 3, 4, 5]
# 弹出指定索引对应的元素
print(a.pop(2))  # 3  有返回值
print(a)  # [1, 2, 4, 5]

方式三:删除指定索引对应的元素del

a = [1, 2, 3, 4, 5, 6]
del a[2]  # 不能返回,使用print会报错
print(a)  # [1, 2, 4, 5, 6]

方式四:将列表清空clear

a = [1, 2, 3]
a.clear()
print(a)  # []

1.1.8 翻转元素,作用在原列表reverse

a = [1, 2, 3, 4, 5, 6]
# 使用通用方法翻转
print(a[::-1])  # [6, 5, 4, 3, 2, 1]
print(a)  # [1, 2, 3, 4, 5, 6]  原列表没有得到改变
# 使用reverse方法翻转
print(a.reverse())  # None 没有返回值
print(a)  # [6, 5, 4, 3, 2, 1] 原列表得到改变

1.1.9 对列表中的元素进行排序,作用在原列表sort

a = [2, 4, 5, 9, 1, 3, 8, 6, 7]
# 默认的排序方式是正序
print(a.sort())  # None  没有返回值
print(a)  # [1, 2, 3, 4, 5, 6, 7, 8, 9]

# 给sort加上参数reverse
b = [2, 4, 5, 9, 1, 3, 8, 6, 7]
b.sort(reverse=True)
print(b)  # [9, 8, 7, 6, 5, 4, 3, 2, 1] 列表先正序,后翻转
c = [2, 4, 5, 9, 1, 3, 8, 6, 7]
c.sort(reverse=False)
print(c)  # [1, 2, 3, 4, 5, 6, 7, 8, 9]
# 补充方法:sorted(列表),把列表当参数而不是调用
d = [2, 4, 5, 9, 1, 3, 8, 6, 7]
print(sorted(d))  # [1, 2, 3, 4, 5, 6, 7, 8, 9]  有返回值
print(d)  # [2, 4, 5, 9, 1, 3, 8, 6, 7]

 总结:

sort        使用方法:列表.sort()      没有返回值    作用在原列表

sorted    使用方法:sorted(列表)   有返回值        不会作用在原列表

1.1.10 列表遍历循环

for循环

while循环

2. 元组的内置方法

回顾:

一个元素的元组要加,逗号   

不加逗号变成了元素原本的类型

在定义字符串或者其它数据类型时加了,逗号就成了元组

2.1 强制类型转换

可以将可迭代类型转换成元组

2.2 索引取值

 2.3 切片

[起始索引:结束索引:步长]

a = (1, 2, 3, 4, 5, 6)
print(a[1:3])  # (2, 3)
print(a[0:5:2])  # (1, 3, 5)
print(a[::-1])  # (6, 5, 4, 3, 2, 1)

sort方法是列表的排序方法,不是元组的 

2.4 计算长度

len

2.5 成员运算

in   /    not in

2.6 遍历

for循环

while循环

2.7 元组拼接

a = (1, 2, 3)
b = (4, 5, 6)
# 方式一:元组.__add__(元组)   返回一个新的元组,不会作用在原来的元组
print(a.__add__((666,)))  # (1, 2, 3, 666)
print(a)  # (1, 2, 3)
# 方式二:使用 + 进行拼接
print(a + b)  # (1, 2, 3, 4, 5, 6)

2.8 元组的重复

元组*数字        将当前元组的所有元素重复指定次数并产生新的元组

a = ('j', 'q', 'k')
print(a * 3)  # ('j', 'q', 'k', 'j', 'q', 'k', 'j', 'q', 'k')

3. 布尔类型的内置方法

强制类型转换   bool()

在python中为假的情况:

1. 布尔值False

2. 数字0

3. 空的其它类型

print(bool(False), type(bool(False)))  # False <class 'bool'>
print(bool(0), type(bool(0)))  # False <class 'bool'>
print(bool(''))  # False
print(bool([]))  # False
print(bool(()))  # False
print(bool({}))  # False

其它情况均为真:

1. 布尔值True

2. 数字1

3. 有值的其它类型,空格也算字符串也算有值

print(bool(True))  # True
print(bool(1))  # True
print(bool(['a']))  # True
print(bool(' '))  # True

4. 字典的内置方法

字典中的键必须是不可变的,通常使用字符串、数字、布尔值作为键

字典中的值可以是任意类型,包括数字、字符串、列表、字典等

4.1 取值

# (1)字典[key]
#  这种方法取字典中没有的键会报错
a = {'name': 'kylian', 'id': 9, 'country': 'France', True: 'psg'}
print(a['id'])  # 9
print(a[True])  # psg
# (2)字典.get(键)
print(a.get('name'))  # kylian
print(a.get('hobby'))  # 如果字典中没有当前的键,返回的就是None
print(a.get('hobby', 'goat'))  # goat 没有键取不到值可以指定默认值

4.2 计算长度

len   计算字典中的键值对个数

4.3 成员运算

判断某个键是否在字典中,而不是某个值

print('name' in a)  # True
print('kylian' in a)  # False

4.4 增加元素

字典的特性:有则添加,无则修改

(1)方式一:字典[key] = value

a = {'name': 'kylian', 'id': 9, 'country': 'France'}
a['club1'] = 'psg'
print(a)  # {'name': 'kylian', 'id': 9, 'country': 'France', 'club1': 'psg'}

(2)方式二:字典.update({key:value})

a = {'one': 1, 'two': 2, 'three': 3}
b = {'four': 4, 'five': 5, 'six': 6}
# 遍历字典b,添加到字典a中
for i in b:
    a[i] = b[i]
print(a)  # {'one': 1, 'two': 2, 'three': 3, 'four': 4, 'five': 5, 'six': 6}

(3)方式三:字典.update(key=value)

以上使用=的方式i是一个固定的值,以下使用键值对的形式i可随遍历而改变

(4)方式四:字典.update(字典)

m = {'a': 1, 'b': 2, 'c': 3}
n = {'d': 4, 'e': 5, 'f': 6}
m.update(n)
print(m)  # {'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5, 'f': 6}

相比于方式二for循环遍历增加一个字典所有元素,方式四代码更简洁

(5)方式五:setdefault(key, value)

向字典中设置当前键对应的默认值

setdefault(key,value)方法用于获取指定键的值;如果键不存在,则返回默认值,并在字典中添加新键值对;如果键存在,则返回键原本对应的值

 4.5 删除元素

info = {'name': 'kylian', 'id': 9, 'club': 'psg', 'goal': 91}
# 方式一:del字典[key]     按照键删除字典对应的键值对
del info['club']  # 没有返回值,不能用变量接收
print(info)  # {'name': 'kylian', 'id': 9, 'goal': 91}

# 方式二:字典.pop(key)    按照键删除字典对应的键值对弹出
res = info.pop('id')
print(res)  # 9  相比于方式一有返回值,且可以用变量接收
print(info)  # {'name': 'kylian', 'goal': 91}

# 方式三:清空字典
info.clear()
print(info)  # {}
# 方式四:弹出最后一个位置的键值对
info = {'name': 'kylian', 'id': 9, 'club': 'psg', 'goal': 91}
res = info.popitem()
print(res)  # ('goal', 91)
print(info)  # {'name': 'kylian', 'id': 9, 'club': 'psg'}

4.6 取出字典中所有的键、所有的值、所有的键值对

info = {'a': '1', 'b': 2, 'c': 3}
# (1)获取字典中所有的键
print(info.keys())
# dict_keys(['a', 'b', 'c']) 可以看成是列表,可以用for循环取出
print(type(info.keys()))  # <class 'dict_keys'>

# (2)获取字典中所有的值
print(info.values())
# dict_values(['1', 2, 3]) 可以看成是列表

# (3)获取字典中所有的键值对
print(info.items())
# dict_items([('a', '1'), ('b', 2), ('c', 3)]) 可以看成是列表嵌套元组
for k, v in info.items():
    print(k)  # a  b  c  
    print(v)  # 1  2  3

5. 集合的内置方法

集合的特点是无序且去重

5.1 强制类型转换

print(set('messi'))  
# {'e', 'm', 's', 'i'} print(set([1, 2, 3]))
# {1, 2, 3} print(set(('j', 'q', 'k')))
# {'q', 'k', 'j'} print(set({'a': 11, 'b': 22, 'c': 33}))
# {'c', 'a', 'b'}

5.2 添加元素

a = {1, 2, 3, 4, 5}
# 添加单个元素
print(a.add(6))  # None
print(a)  # {1, 2, 3, 4, 5, 6}
# 一次添加多个元素
a.update((11, 22, 33))  # 只能是可迭代类型
print(a)  # {1, 2, 3, 4, 5, 6, 11, 22, 33}

5.3 删除元素

# 方式二:pop
# 集合的pop默认弹出第一个元素,而列表的pop默认弹出最后一个元素
b = {'messi', 'ronaldo', 'neymar', 'kylian'}
print(b.pop())  # messi  索引为0的位置
print(b)  # {'ronaldo', 'neymar', 'kylian'}

5.4 其它方法

计算长度len

遍历循环for 

成员运算 in    /   not in 

 

标签:info,kylian,内置,messi,数据类型,列表,print,方法,字典
From: https://www.cnblogs.com/hbutmeng/p/18311494

相关文章

  • 电脑windows7系统环境Framework 4.6.2无法安装的解决方法
    一、错误1、尚未安装.net4.6,无法建立到信任根颁发机构的证书链的错误2、出现错误的原因:在安装Microsoft.NETFramework4.6.2脱机包时提示无法建立到信任根颁发机构的证书链二、解决方法1、实际上是要安装一个根证书MicrosoftRootCertificateAuthority2011.cer2、开始......
  • 插片式远程IO模块:单通道PNP和NPN编码器模块功能和安装方法
     XD系列插片式远程I/O模块是兴达易控技术研发的分布式扩展模块。XD系列成套系统主要由耦合器、各种功能I/O模块、电源辅助模块以及终端模块组成。有多种通讯协议总线的耦合器,例如PROFINET、EtherCAT、Ethernet/IP、CclinkIE以及modbus/TCP等。I/O模块可分为多通道数字量输入模块......
  • Git 的介绍和使用方法
    Git是什么?Git是目前世界上最先进的分布式版本控制系统(类似于同时协作,每个人负责一个模块后上传到分支dev下,负责人审核过后合并到master中)。下载方法和安装直接到官网下载后,默认安装。Git-安装Git打开在桌面按着shift键同时鼠标右键会出现一个OpenGitBashhere单击......
  • Go语言读取文件方法大总结
    前言在Golang中读取文件。我们将使用以下包来处理这些文件。os 包提供了一个独立于平台的接口来执行操作级操作。IOutil 软件包提供了易于使用的实用程序函数来处理文件,而无需了解太多内部实现。bufio 包实现了缓冲IO,这有助于我们提高输入和输出操作的性能和吞吐量。lo......
  • vue路由守卫的使用方法和应用场景
    全局守卫beforeEach中三个属性router.beforeEach((to,from,next)=>{  if(!localStorage.getItem("token")){  if(to.path!=="/login"){   returnnext("/login")  } } next()})路由独享守卫 constroutes=[ {  pat......
  • C数据类型及语句
    四、运算符4.1运算符的概念以及分类运算符的概念:用运算符将运算对象(也称操作数)连接起来的、符合C语法规则的式子,称为C算术表达式运算对象包括常量、变量、函数等例如:a*b/c-1.5+'a'运算符的分类:1、双目运算符:即参加运算的操作数有两个例:+a+b2、单目运算符:参......
  • 一次性强求很多和接口处理方法
    importaxiosfrom'axios'exportconsthandQueue=(reqs//请求总数)=>{reqs=reqs||[]constrequestQueue=(concurrency)=>{concurrency=concurrency||6//最大并发数constqueue=[]//请求池letcurrent=0co......
  • pdf怎么加密? 教你3个好用的方法
    PDF加密是一种常见的文档保护措施,用于确保PDF文件中的内容不被未经授权的人访问或修改。随着数字化时代的到来,电子文档的使用变得越来越普遍。在处理敏感信息或重要文件时,保护文档安全显得尤为重要。一般来说,PDF加密主要包括两种方式:用户密码和所有者密码。用户密码用于限制文档......
  • 了解操作数组的方法
    1.join()Array.join()方法将数组中所有元素都转换为字符串并连接在一起,返回最后生成的字符串。可以指定一个可选的字符串在生成的字符串中来分隔数组的各个元素。如果不指定分隔符,默认使用逗号。例如:letarr=[1,2,3,4,5]//创建一个包含5个元素的数组console.l......
  • idea内置数据库DataGrip + 多表操作sql语句
    多表操作:一对多(多对一),一对一,一对多可以通过物理外键实现,但实际上更推荐使用逻辑外键以下均为物理外键使用方法--=====================================多表设计================================---------------------一对多职位与员工--员工子表createta......