一小时学会Python3爬虫基础(七)高级数据的公共操作!

前言

高级数据讲解完毕,不过怎么看起来每个数据类型的操作都好像有那么一点相似?所以这回我们来讲一下高级数据类型的公共操作内容。

公共运算符

1. 加号运算符

其实,“+”这个运算符除了能用来做算术运算,其实它还充当着序列数据“合并作用”,具体内容我们可以用代码的方式来操作一下。
字符串

str1 = 'aa'
str2 = 'bb'
print(str1 + str2) # 结果 “aabb”

元组

t1 = (1,2)
t2 = (10,20)
print(t1 + t2) # 结果 (1,2,10,20)

列表

list1 = [1,2,3,4,5]
list2 = [6,7,8,9,10]
print(list1 + list2) # 结果 [1,2,3,4,5,6,7,8,9,10]

结论:运算符 + 作为字符串、列表、元组的合并

2. 乘法运算符

然后 “*”这个运算符能作为算术运算符,其实也可以当做数据拷贝来用。
字符串

str1 = 'aa'
print(str1 * 5)  # 结果 aaaaaaaaaa

元组

t1 = (1,2) 
print(t1 * 5) #结果:(1, 2, 1, 2, 1, 2, 1, 2, 1, 2)

列表

list1 = [1,2,3,4,5]
print(list1 * 2) # 结果:[1, 2, 3, 4, 5, 1, 2, 3, 4, 5]

结论:运算符 * 作为字符串、列表、元组的复制

3. 成员运算符

这个就比较好理解了,其实就是对一类序列数据进行判断某数据到底在不在里面。

字符串
检查字符a是否存在

str1 = 'aa'
print('a' in str1)
print('a' not in str1)

元组
检查100是否存在

t1 = (1,2)
print(100 in t1)
print(100 not in t1)

列表
检查数据10是否存在

list1 = [1,2,3,4,5]
print(10 in list1)
print(10 not in list1)

字典
检查name是否存在

dict1 = {'name':'Tom'}
print('name' in dict1)
print('name' not in dict1)
print('name' in dict1.keys())
print('name' not in dict1.values())

公共函数

1. len()

计算序列类型数据中的数据个数,也可以说是计算容器中的元素个数
字符串

str1 = "abcdefg"
print(len(str1))  # 结果 7

列表

list3 = [10,20,30,40,50,60,70,80,90]
print(len(list3)) # 结果 9

元组

t1 = (10,20,30,40,50,60,70,80,90)
print(len(t1)) # 结果 9

集合

s1 = {10,20,30,40,50,60,70,80,90}
print(len(s1)) # 结果 9

字典

dict3 = {'name':'Tom','age':20}
print(len(dict3)) # 结果 2

2. del 或 del()

这个就是删除,基本上所有的序列类型都可以用,可删除 str list set dict tuple ,可删除list[下标] 的数据,以及diec[键值]的数据。
这个之前在说高级数据操作已经重复写了很多次了,这里就不逐一罗列。
字符串

str1 = "abcdefg"
del str
print(str1)

3. max()和min()

返回序列中的最大值数据和最小值数据:可取数组类型 为str list
字符串

str1 = "abcdefg"
print(max(str1)) # 结果 g
print(min(str1)) # 结果 a

列表

list3 = [10,20,30,40,50,60,70,80,90]
print(max(list3)) # 结果 90
print(min(list3)) # 结果 10

4. range()

这个从英文单词就可以懂,取值范围的意思!
基本语法:range(start,end,step)
生成的数字 开头start到结尾end,步长就是间隔数,配合 for循环使用。主要是给每一种能够进行添加的序列生成的数值取值范围函数。

list_range = []
for i in range(0,30,2): # 如果不写开始start 默认为0  如果不写步数默认为1
    print(i)
    list_range.append(i)
print(list_range) # 结果  [0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28]

5. enumerate()

用于一个可遍历的数据对象(list、tuple、str)组合为一个索引序列,同时列出数据和数据下标,一般用在list1 = [‘a’,‘b’,‘c’,‘d’,‘e’]

list1 = ['a','b','c','d','e']
for i in enumerate(list1,start = 4): 
 	print(i) # 结果 (4, 'a') (5, 'b') (6, 'c') (7, 'd') (8, 'e')
# 如果没确定start 返回的数据为元组,第一数据原序列数据下标,第二为原数据
    

实际上就是拆分序列后,把每个序列重新组合成一个元组,如果有确定开始数据是多少,会以开始数字往后+1,如果没有就按照序列下标标注。

list1 = ['a','b','c','d','e']
for i in enumerate(list1):
 	print(i) # 结果:(0, 'a')(1, 'b')(2, 'c')(3, 'd')(4, 'e')

总结

在这里插入图片描述

以上就是 常见的公共操作方法,接下来我们正式进入到函数的学习,估计函数这块是很多初学者不好理解的东西,大概率可能就是词汇理解上的错误引起。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不世人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值