《python爬爬乐》入门篇:结构类型之列表

python爬虫

 

前言

现实生活中,我们会在家里摆放各种家具,用于存放不同类型的物品,比如鞋柜,衣柜,书柜,茶几、电视柜等。在python中也是一样,当使用的数据越来越多时,就需要考虑如何存放这些数据,会更加合理(方便存取)。

Python中储存数据有四种结构类型,分别是:列表、字典、元组、集合。这四种结构类型分别有自己适用的场合,我们可以先整体对比,看看语法上的区别。

# 列表:
list = ['刘备', '关羽', '张飞', '十方上下']

# 字典:
dict = {1:'刘备', 2:'关羽', 3:'张飞', 4:'十方上下'}

# 元组:
tuple = ('刘备', '关羽', '张飞', '十方上下')

# 集合:
set = {'刘备', '关羽', '张飞', '十方上下'}

列表使用中括号;字典使用大括号,括号中数据是key:value格式;元组使用小括号;集合使用大括号。

 

列表

python中的列表(list),类似于生活中的火车。它的主要特征,每个位置都可以保存一个任意类型的数据,根据添加顺序保存数据,所以列表中的数据是有序的

定义的列表变量默认指向第一个数据,所以访问使用索引(偏移量)的方式来实现,索引从0开始,指向第一个数据。

示例一:保存四个好友的姓名。(相同类型的数据)

friends = ['老王', '二胖', 'jack马', '十方上下']

如果要访问二胖,使用friend[1]。表示从第一个数据开始,向后偏移1次。

示例二:保存一个好友的基本信息:姓名,电话,年龄,住址(不同类型的数据)

ma = ['jack马', '13800138000', 48, '武汉市xx街26号']

示例三:保存一个好友的基本信息,包含多个电话号码(列表嵌套使用)

ma = ['jack马', ['13800138000', '110' ,'120']]

 

列表数据操作(添加、删除、修改、访问)

大家如果为了学习语法而学习,很难记住这些语法的使用,这儿介绍我的学习经验, 通过给自己提几个问题(需求),反复练习语法7遍以上,基本都不会再忘记了,就算隔很长时间(大于一个月)忘记了,通过阅读自己的代码也能很快的再次上手。

接下来,我先提出几个需求吧。因为以后是打算做爬虫来爬取A股信息,所以这儿就以A股数据存储和分析的需求来提问。

1.定义一个列表,保存“自选股”

stockList = ['603477', '600876', '300792', '002800']
print(stockList)

2.添加3支票到“自选股”列表\

stockList = ['603477', '600876', '300792', '002800']
stockList.append('002552') # 添加一个数据
stockList.extend(['002351', '300078']) # 添加多个数据
print(stockList)

3.遍历“自选股”中的所有票(分别使用while循环和for循环实现)

stockList = ['603477', '600876', '300792', '002800']

# while方式
i = 0
while i < len(stockList) :
    print(stockList[i])
    i += 1

# for方式
for stock in stockList :
    print(stock)

4.删除不打算再观察的票

stockList = ['603477', '600876', '300792', '002800']
stockList.remove('002552')   # 根据数据删除
del stockList[2]             # 根据下标删除
print(stockList)

5.查看前2只票和最后一只票

stockList = ['603477', '600876', '300792', '002800']
print(stockList[0:2])
print(stockList[-1])
print(stockList)

6.添加一只票到列表末尾,插入一只票到第2个位置

stockList = ['603477', '600876', '300792', '002800']
stockList.insert(1, '603610')
print(stockList)

7.将第3只票替换成"000001"

stockList = ['603477', '600876', '300792', '002800']
stockList[2] = '000001'
print(stockList)

8.将两个“自选股”列表合并

stockList1=['603610', '002552']
stockList2=['002351', '300078']
stockList = stockList1+stockList2
print(stockList)

9.将“自选股”复制一份到“超短自选”,然后再清空“自选股”

stockList = ['603477', '600876', '300792', '002800']
stocks = stockList.copy()
stockList.clear()
print(stocks)
print(stockList)

练习

  1. 定义一个列表“合作伙伴”,保存4个公司名称

  2. 遍历“合作伙伴”列表

  3. 添加4个公司到列表

  4. 分别根据名称和索引删除一家公司

  5. 查看前两个公司和后两个公司

  6. 插入一家公司到第1个位置

  7. 将“合作伙伴”列表复制到“合作公司”,清空“合作伙伴

  • 5
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值