Python入门笔记(3)_ List, Tuple, Dict, Set

List : 列表

1. 生成

PeopleInfo = ['Phoenix', 23, 99, True]

上面我们定义了一个List,其中可以包含各种不同数据类型。


2. 访问

>>> print L[0]      # 第0个元素

Phoenix

>>> print L[3]

True

>>> print L[-1]     # 倒数第一个元素

True

>>> print L[-3]

23


3. 添加、删除和替换元素

添加采用函数   append()

>>> PeopleInfo.append('Shan Xi')

>>> print PeopleInfo

PeopleInfo = ['Phoenix', 23, 99, True, 'Shan Xi']

可以看到,添加元素默认为最后一位。如果要添加到指定位置,如下示例:

>>> PeopleInfo.append(0,'No.1')

>>> print PeopleInfo

PeopleInfo = ['No.1', 'Phoenix', 23, 99, True, 'Shan Xi']


删除采用函数  pop()

>>>PeopleInfo.pop()

'Shan Xi'

>>>print PeopleInfo

PeopleInfo = ['No.1', 'Phoenix', 23, 99, True]

可见,删除默认从最后一个元素删除。若要从指定位置删除,如下示例:

>>>PeopleInfo.pop(0)

'No.1'

>>>print PeopleInfo

PeopleInfo = ['Phoenix', 23, 99, True]


替换元素

>>> PeopleInfo[3] ='Shan Xi'

>>>print PeopleInfo

PeopleInfo = ['Phoenix', 23, 99,'Shan Xi']

>>> PeopleInfo[-1] = True

>>>print PeopleInfo

PeopleInfo = ['Phoenix', 23, 99, True]


Tuple : 元组

和List不同的是,Tuple 一旦建立就不能改变其元素了。

1. 定义

PeopleInfo = ('Phoenix',23, 99, True)

既然 tuple 定义就是用(),那么 (9)到底是 整数 还是 tuple 呢?

(9)是整数,若要定义 单元素 9 的 tuple ,定义格式应为 (9,)!!!

2. 访问

同 List 一样。

3. 来看看一个特殊的 tuple

PeopleInfo = ('Phoenix', [23, 99], True)

这里 tuple 实际有三个元素。其中第二个元素是个 list。

tuple 本身不能改变,但 list 可变,所以,这里 [ 23, 99] 也是可以改变的。


Dict

1. 定义

PeopleInfo = { 

'Phoenix' : 10.0

'Tree' : 9.7

'Sky' : 9.6

}

这个dict由 “名字”和“成绩”组成。“名字”叫 key,“成绩”叫 value。

我们来看看这个 PeopleInfo 的长度

>>> len(PeopleInfo )

3

也就是说,一个 key - value算一个长度。


2. 访问

>>> print PeopleInfo['Tree']

9.7

>>> print PeopleInfo.get('Sky')

9.6

>>> print PeopleInfo.get('phoenix')

None

get用来检测访问单元是否存在。不存在时,返回 None。


3. dict 的三个特点

首先,是查找速度快,无论dict有10个元素还是10万个元素,查找速度都一样。

其次,存储的key-value序对是没有顺序的。

>>> print PeopleInfo 

'Tree' : 9.7, 'Phoenix' : 10.0, 'Sky' : 9.6 }

第三个特点是作为 key 的元素必须不可变,Python的基本类型如字符串、整数、浮点数都是不可变的,都可以作为 key。但是list是可变的,就不能作为 key。


4. dict 的更新

>>> PeopleInfoD['Ruifeng'] = 9.9

>>>print PeopleInfo 

'Tree' : 9.7, 'Ruifeng':9.9,'Phoenix' : 10.0, 'Sky' : 9.6 }

>>> PeopleInfo['Sky'] = 9.8

>>>print PeopleInfo 

'Tree' : 9.7, 'Ruifeng':9.9,'Phoenix' : 10.0, 'Sky' :9.8 }


Set

set 持有一系列元素,这一点和 list 很像,但是set的元素没有重复,而且是无序的,这点和 dict 的 key很像。

1. 定义

>>> PeopleInfo_Set = set(['Phoenix', 'Tree', 'Sky'])

>>> print PeopleInfo_Set

set(['Phoenix', 'Sky', 'Tree'])

注意,输出是无序的。


>>> PeopleInfo_Set = set(['Phoenix', 'Tree', 'Sky', 'Sky'])

>>> print PeopleInfo_Set

set(['Phoenix', 'Sky', 'Tree'])

>>> len(PeopleInfo_Set 

3

注意,set 不能包含重复的元素。PeopleInfo_Set 的长度任然为3。


2. 访问

set 是无序的,因此无法通过索引访问。通常用 in 来判断 set 中是否存在某元素。

>>> 'Phoenix' in PeopleInfo_Set 

True

>>> 'sky' in PeopleInfo_Set 

False


3. 添加和删除

添加采用函数 add()

>>> PeopleInfo_Set.add('Sky')

>>> print PeopleInfo_Set 

set(['Phoenix', 'Sky', 'Tree'])

>>> PeopleInfo_Set.add('Ruifeng')

>>> print PeopleInfo_Set 

set(['Phoenix', 'Sky', 'Ruifeng', 'Tree'])


删除采用函数 remove()

>>> PeopleInfo_Set.remove('Sky')

>>> print PeopleInfo_Set 

set(['Phoenix', 'Ruifeng', 'Tree'])


4. 总结一下 set 的特点

set的内部结构和dict很像,唯一区别是不存储value,因此,判断一个元素是否在set中速度很快。

set存储的元素和dict的key类似,必须是不变对象,因此,任何可变对象是不能放入set中的。

最后,set存储的元素也是没有顺序的。
















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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值