Spider理论系列-python的数据类型

本文详细介绍了Python中的基本数据类型,包括字符串的格式化、索引和切片、常用操作,以及列表、元组、Set和字典的概念、增删改查方法。重点讨论了如何对这些数据类型进行操作,如字符串的大小写转换、替换、切割,列表的动态修改,元组的不可变性,Set的去重功能,以及字典的键值对操作等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

写在前面

数据类型

一.基础数据类型

二.字符串

1.字符串格式化

2.索引和切片

3.常用操作

4.切割和替换

5.查找和替换

6.补充和总结

三.列表

1.列表的概念

2.增删改查

四.元组

五.Set

六.字典

1.概念

2.增删改查

3.循环和嵌套

写在前面

为什么要把数据类型作为理论系列第一章呢?其实呢我们使用爬虫得到的数据需要处理,比如字符串,字典,列表,元组,我们爬取的数据就是这些类型,如何操作数据成为我们想要的.就需要熟练掌握这些数据类型的API,就像spider实战系列爬取一人之下那一文中​​Spider实战系列-抓取《一人之下第三季》_浅辄的技术博客_51CTO博客​​里的密钥解密那一部分,就使用了字符串替换.我个人是学Java出身的,因为Java是驼峰命名,而且还是个强类型语言,但python就不一样,定义一个变量就能使用,哈,其实有时候还是挺不方便的.

所以,爬虫要想学好,下面的数据类型操作要熟练使用.

数据类型

一.基础数据类型

  • int
#int:整数,加减乘除,大小比较
a=10
  • float
#float:小数
a=10.5
print(a)
print(10/3) #小数:数据范围是无限的。整数:在某一个特定的区间内是可以表示的很清楚的
#1~100000000

#0~1
#计算机是一个二进制的产品:0,1
#计算机表示一个小数是会有误差的,
  • boolean
#bool:用来做条件判断的
#     取值范围:True,False
#基础数据类型之间的转化
a ='10'
print(type(a))
b=int(a)#把字符串转化成int()
print(type(b))

a=10        #在python中,所有的非零的数字都是True,零是Fasle
b=bool(a)
print(type(b))
print(b)
while 1:    #死循环,恒为真
    print("给我钱")

s = ""#在python中,所有的非空字符串都是True,空字符串是False
print(bool(s))

#综上,在pythont中,表示空的东西都是False,不空的东西都是True

二.字符串

1.字符串格式化

字符串的格式化问题

#我叫xxx,我住在xxx,我几年xxx岁,我喜欢xxx
name = input("输入你的名字:")
address = input("输入你的地址:")
age = int(input("输入你的年龄:"))
hobby = input("输入你的爱好:")
# %s字符串占位
# %d占位整数
# %f占位小数
s = "我叫%s,我住在%s,我几年%d岁,我喜欢%s" % (name,address,age,hobby)
s1 = "我叫{},我住在{},我几年{},我喜欢{}".format(name,address,age,hobby)
s2 = f"我叫{name},我住在{address},我几年{age},我喜欢{hobby}"# f-string
print(s)

2.索引和切片

# 索引和切片
# 索引:按照位置提取元素
s = "我叫Lee"
# 可以采用索引的方式来提取某一个字符(文字)
print(s[2])  # 程序员都是从0开始数数
print(s[-1])  # -表示倒数

# 切片:从一个字符串中提取一部分内容
s = "我是Lee,你是小黄么"
print(s[3:6])  # 从索引3位置进行切片,切到6结束 坑:切片拿不到第二个位置的元素
# 语法:s[start:end]从start到end进行切片,但是取不到end[start,end)
print(s[0:6])
print(s[:6])  # 如果start是从开头进行切片,可以省略
print(s[6:])  # 从start开始一直截取到末尾
# : 如果左右两端有空白,表示开头或者结尾
print(s[:])

print(s[-3:-1])  # 目前还是只能从左往右切片
print(s[-1:-3])  # 没结果,这是个坑!!!

s = "我爱你"
# 可以给切片添加步长来控制切片的方向
print(s[::-1])  # 一表示从右往左
# 语法:s[start:end:step]从start切到end,每step个元素选出来一个元素

s="abcdefghijklmnopq"
print(s[3:8:2])
print(s[-1:-10:-3])

3.常用操作

# 字符串常用操作
# 字符串的操作一般不会对原字符串产生影响,一般是返回一个新的字符串
# 3.1字符串大小写转换
s = "python"
s1 = s.capitalize()
print(s1)

s = "I have a dream!"
s1 = s.title()  # 单词的首字母大写
print(s1)

s = "I HAVE A DREAM"
s1 = s.lower()  # 变成小写字母
print(s1)

s = "i have a dream"
s1 = s.upper()  # 把所有字母变成大写字母
print(s1)

# 如何忽略大小写来进行判断 =>  upper()
verify_code = "xAd1"
user_input = input(f"请输入验证码({verify_code}):")
if verify_code.upper() == 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值