这两天开始学习了下Python,在此灰常感谢廖雪峰老师关于Python的系列文章。下面,是我在学习过程中遇到的标题上的四个内置属性时,觉得理一理,不然觉得会“思想错乱”的。
1. List
list是Python内置的一种数据类型,它是有序的而且状态可以改变,例如可以对其进行增删改查的操作。
示例如下:首先创建一个list列表,要清楚list的格式,不然会和下面的tuple等等搞混,话说我已经有点…………….
> list = ['a', 'b', 'c']
通过append
添加一条数据:
> list.append('d')
> ['a', 'b', 'c','d']
通过insert
在列表指定位置插入一条数据:
> list.insert(1,'e')
> ['a', 'e' , 'b', 'c','d']
通过pop
可以删除列表最后一条数据,也可以通过指定位置,删除该位置元素,如pop(i)
:
list.pop()
[‘a’, ‘e’ , ‘b’, ‘c’]
list.pop(1)
[‘a’, ‘b’, ‘c’]
可以通过索引位置,替换指定位置的元素:
list[1]='k'
['a' , 'k' , 'c' ]
2.tuple
tuple是Python中另一种有序列表,元组。但是tuple不像list,tuple初始化后便不能再随意修改了。除非元素里有嵌套list列表,下面会举例说……………….
tuple书写格式:
list = ('a', 'b', 'c')
注意:如果列表中只有一个元素,则须注意:
>>> t = (1)
>>> t
1
定义的并不是tuple,而是数字1,所以要避免这种错误,使用如下格式:
>>> t = (1,)
>>> t
(1,)
前面有说可以通过嵌套list列表,来实现修改tuple列表:
>>> t = ('a', 'b', ['A', 'B'])
>>> t[2][0] = 'X'
>>> t[2][1] = 'Y'
>>> t
('a', 'b', ['X', 'Y'])
具体原因,请移步廖雪峰老师的其中一篇文章–使用list和tuple
3.dict
dict是Python内置的一种元素,使用键-值(key-value)存储,具有极快的查找速度。
dict书写格式:
>>> grade = {'kk': 95, 'll': 75, 'kl': 85}
通过指定key便能找到对应的值:
>>> grade['kk']
95
通过key添加元素:
>>> d['kong'] = 67
>>> d['kong']
67
通过pop(key)的方法删除匹配的key-value:
>>> d.pop('kk')
95
4.set
set和dict类似,也是一组key的集合,但不存储value。在set中,没有重复的key。
创建一个set,需要提供一个list作为输入集合:
>>> s = set([1, 2, 3])
>>> s
{1, 2, 3}
通过add(key)
方法可以添加元素到set中,基于set特性,如果添加重复元素,则不会有效果
>>> s.add(4)
>>> s
{1, 2, 3, 4}
>>> s.add(4)
>>> s
{1, 2, 3, 4}
通过remove(key)
方法可以删除元素:
>>> s.remove(4)
>>> s
{1, 2, 3}
最后放个大招,就是对于不可变的对象,即便存在replace属性,但是也不能改变初始值,但是会创建一个新的对象来存储替换的值,如下:
>>> a = 'abc'
>>> a.replace('a', 'A')
'Abc'
>>> a
'abc'
>>> a = 'abc'
>>> b = a.replace('a', 'A')
>>> b
'Abc'
>>> a
'abc'