Python-爬虫基础三(数据类型-高级)

一、字符串的常见操作包括:

len 获取字符串的长度
find 查找指定内容在字符串中是否存在,如果存在就返回该内容在字符串中第一次出现的开始位置索引值,不存在则返回-1
startswith,endswith 判断字符串是不是以xxx开头,结尾
count 计算出现次数
replace 替换字符串中指定的内容,如果指定次数count,则替换不会唱过count次
split 通过参数的内容切割字符串
upper,lower 将字符串中的大小写互换
strip 去空格
join 字符串拼接
name = 'LuckInAaron'
# - 获取长度:len      --获取name的长度
print(len(name))
#》》11
# - 查找内容:find     --查找n出现在第几位(从0开始计)
print(name.find('n'))
#》》5
# - 判断:startswith,endswith
##判断是否以A开头
print(name.startswith('A'))
#》》False
##判断是否以n结尾
print(name.endswith('n'))
#》》True
# - 计算出现次数:count       --统计n的出现次数
print(name.count('n'))
#》》2
# - 替换内容:replace   --将小写n替换为V
print(name.replace('n','V'))
#》》LuckIVAaroV
# - 切割字符串:split    将字符串中 In 切除
print(name.split('In'))
#》》['Luck', 'Aaron']
# - 修改大小写:upper,lower
##将小写字符转为大写 upper
print(name.upper())
#》》LUCKINAARON
##将大写字符转换为小写 lower
print(name.lower())
#》》luckinaaron
# -  空格处理:strip
#此处s前后各3个空格
b ='   s   '
print(len(b))
#》》7
#去除空格后长度为1
print(len(b.strip()))
#》》1
# - 字符串拼接:join
s = 'a'
print(s.join('hello'))
#》》haealalao
实例

 

二、列表高级

  列表的增删改查

  添加元素

  增加元素有以下几个方法:

  • append        在末尾添加元素
  • insert      在指定位置插入元素
  • extend         合并两个列表
course_list = ['语文','数学','英语']
print(course_list)
#》》['语文', '数学', '英语']
## append    在末尾加入历史
course_list.append('历史')
print(course_list)
#》》['语文', '数学', '英语', '历史']
## insert    index的值就是你想插入数据的那个下标,此处0是最前面
course_list.insert(0,'化学')
print(course_list)
#》》['化学', '语文', '数学', '英语', '历史']
## extend   追加
num_list = ['1','2','3']
num_list.extend(course_list)
print(num_list)
#》》['1', '2', '3', '化学', '语文', '数学', '英语', '历史']
实例

  修改元素

city_list = ['北京','上海','广州']
print(city_list)
#》》['北京', '上海', '广州']
# 将列表中的元素的值修改
# 可以通过下标来修改,注意列表中的下标是从0开始的
city_list[2] = '大连'
print(city_list)
#》》['北京', '上海', '大连']

  查找元素

  查看指定的元素是否存在,包含方法有:

  • in             存在,如果存在那么结果为True,否则为False
  • not  in      不存在,如果不存在那么结果为True,否则为False
##通常配合 if 使用
## in city_list
= ['北京','上海','广州'] ## in 判断以下控制台输入的数据是否在列表中 city = input('请输入城市名:') if city in city_list: print('') else: print('不在')
## not  in 
city_list = ['北京','上海','广州'] ## not in 判断以下控制台输入的数据是否在列表中 city = input('请输入城市名:') if city not in city_list: print('不在') else: print('')

  删除元素

  列表元素的常用删除元素有:

  • del           根据下标进行删除
  • pop          删除最后一个元素
  • remove    根据元素的值进行删除

  del 

city_list = ['北京','上海','广州']
##删除下标0 del city_list[0
] print(city_list)
>>['上海', '广州']

  pop

city_list = ['北京','上海','广州']
##默认删除最后一个元素广州
city_list.pop()
print(city_list)
>>['北京', '上海']

  remove

city_list = ['北京','上海','广州']
##指定删除元素  这里删除上海
city_list.remove('上海')
print(city_list)
>>['北京', '广州']

 三、元组高级

Python的元组与列表类似,不同的是'元组的元素不能修改',元组使用小括号,列表使用方括号

# 元组不可以修改里面的内容
# 列表中的元素是可以修改的 而元组中的元素是不可以被修改
a_tuple = (5)
print(type(a_tuple))
>><class 'int'> ##这里是int类型 # # 当元组中只要一个元素的时候 那么他是整型数据 # # 定义只有一个元素的元组,需要在唯一的元素后写一个逗号 b_tuple
= (5,) print(type(b_tuple))
>><class 'tuple'>

四、切片

  切片是指对操作的对象截取其中一部分的操作,字符串、列表、元组都支持切片

  切片的语法:[起始:结束:步长]   也可以简化使用 [起始:结束]

  注意:选取的区间从‘起始’位开始,到‘结束’位的前一位结束(不包含结束位本身),步长表示选取间隔。

s ='hello world'
# 在切片中直接写一个下标
print(s[0])
#>>h
# 左闭右开区间   包含坐标的数据 不包含右边的数据
print(s[0:4])
#>>hell
# 是从起始的值开始  一直到末尾
print(s[1:])
#>>ello world
# 是下标为0的索引的元素开始 一直到第二参数为止   遵循左闭右开区间
print(s[:4])
#>>hell
# 从下标为0的位置开始 到下标为6的位置结束  每次增长2个长度
print(s[0:6:2])
#>>hlo

五、字典高级

查看元素

除了使用key查找数据,还可以使用get来获取数据

# 定义一个字典
person = {'name':'aaron','age':25}
#访问person的name
print(person['name'])
#>>aaron

# 使用[]的方式,获取字典中不存在的key的时候  会发生异常   keyerror
print(person['sex'])
#>>KeyError: 'sex'
# 不能使用.的方式来访问字典的数据
# 使用.的方式,获取字典中不存在的key的时候  会返回None值
print(person.get('age'))
#>>25
print(person.get('sex'))
#>>None

修改元素

字典的每个元素中的数据是可以修改的,只要通过key找到即可修改

# 定义一个字典
person = {'name':'aaron','age':25}
# 修改之前的字典
print(person)
#>>{'name': 'aaron', 'age': 25}
# 修改name的值为Lucky   注意使用 [''] 
person['name'] = 'Lucky'
# 修改之后的字典
print(person)
#>>{'name': 'Lucky', 'age': 25}

添加元素

# 定义一个字典
person = {'name':'aaron','age':25}
# 添加一个新的key value   性别  男
#如果使用变量名字[''] = 数据时  这个键如果在字典中不存在  那么就会变成新增元素
person['gender'] = ''
print(person)
#>>{'name': 'aaron', 'age': 25, 'gender': ''}
# 如果这个键在字典中存在 那么就会修改这个元素
person['name'] = 'lucky'
print(person)
#>>{'name': 'lucky', 'age': 25, 'gender': ''}

删除元素

  • del
# (1) 删除字典中指定的某一个元素
person = {'name':'aaron','age':25}
# 删除之前
print(person)
#>>{'name': 'aaron', 'age': 25}
##删除 age
del person['age']
# 删除之后
print(person)
#>>{'name': 'aaron'}

# (2) 删除整个字典
del person
print(person)
#>>NameError: name 'person' is not defined 这里因为person已经被删除了,所以报错不打印
  • clear    清空字典 但是保留字典对象
# 清空指的是将字典中所有的数据 都删除掉  而保留字典的结构
person = {'name':'aaron','age':25}
person.clear()
print(person)
#>>{}
###只保留了大括号

遍历

person = {'name':'aaron','age':25}

# (1) 遍历字典的key
# 字典.keys() 方法 获取的字典中所有的key值  key是一个变量的名字 我们可以随便起
for key in person.keys():
   print(key)
#>>name
#>>age

# (2) 遍历字典的value
# 字典.values()方法 获取字典中所有的value值 value也是一个变量 我们可以随便命名
for value in person.values():
print(value)
#>>aaron
#>>25


# (3) 遍历字典的key和value
for key,value in person.items():
print(key,value)
#>>name aaron
#>>age 25

# (4) 遍历字典的项/元素
for item in person.items():
print(item)
#>>('name', 'aaron')
#>>('age', 25)

 

posted @ 2022-05-13 01:00  LuckinAaron  阅读(53)  评论(0编辑  收藏  举报