正文

1 创建列表

对于初学者来说,创建列表最常用的方法就是用一对方括号。

Python 去方括号 python 方括号用法_Python 去方括号

即便是老鸟,也会大量使用方括号创建列表,尤其是使用推导式创建列表的情况下。

Python 去方括号 python 方括号用法_Python_02

但其实方括号就像口语或俚语,太过随便。大家要习惯使用严谨的list()来创建列表。使用list()创建列表,是list类的实例化的标准方法,可以体会list类的构造函数如何适应不同类型的参数。

Python 去方括号 python 方括号用法_开发语言_03

2 列表的索引

方括号可以创建列表,但方括号并不等同于列表,因为方括号还用来索引。

Python 去方括号 python 方括号用法_Python_04

列表的索引非常灵活,尤其是引入了负数索引,用-1表示最后一个元素或逆序,实属喜大普奔。上面的操作,属于常用索引方式,如果能读懂下面的代码,说明你已经具备了足够深的功力。

Python 去方括号 python 方括号用法_开发语言_05

3 列表的方法

对于列表对象的方法如果能信手拈来,那就是Python高手了。

Python 去方括号 python 方括号用法_开发语言_06

02 花括号

花括号代表字典对象,大多数初学者都这样认为。然而,这是错误的,至少是片面的。下面的代码中,a和b都是用花括号创造出来的对象,却一个是字典,一个是集合。

Python 去方括号 python 方括号用法_Python 去方括号_07

原来,Python用花括号表示字典和集合两种对象:花括号内是空的,或者是键值对的,表示字典;花括号内是无重复元素的,表示集合。为了不引起误会,我习惯用dict()来生成字典,用set()来生成集合。

Python 去方括号 python 方括号用法_Python_08

编码实践中,虽然在某些情况下集合是无可替代的,但集合的使用频率是“四大金刚”中最低的,我们这里不展开讨论,只说说字典的使用技巧。

1 判断一个键是否存在于字典中

Py2时代,dict对象曾经有has_key()的方法,用来判断是否包含某个键。py3舍弃了这个方法,判断一个键是否存在于字典中,只能使用in这样的方法了。

Python 去方括号 python 方括号用法_开发语言_09

2 向字典中添加一个新键或更新键值

很多人喜欢用对字典的一个键赋值的方法,实现向字典中添加一个新键或更新键值。

Python 去方括号 python 方括号用法_开发语言_10

我不推荐这样的方式,使用update()才更有仪式感,还可以一次添加或修改多个键。

Python 去方括号 python 方括号用法_python_11

3 从字典中获取一个键值

a[‘age’]是最常用的方式,但是也还会遇到键不存在的异常。下面的方法值得推荐。

Python 去方括号 python 方括号用法_Python_12

4 获取字典的全部键、全部值、全部键值对

dict类提供了keys()、values()和items()等三个方法分别返回字典的全部键、全部值和全部键值对。需要注意的是,返回结果并非列表,而是迭代器。如果你需要列表形式的返回结果,请使用list()转换。

Python 去方括号 python 方括号用法_Python_13

5 遍历字典

遍历字典的时候,很多同学或写成遍历字典的keys()。其实,不需要这么麻烦,可以像下面这样直接遍历。

Python 去方括号 python 方括号用法_Python_14

03 圆括号

圆括号代表元组对象,这么说应该没有问题吧?的确,听起来没有问题,但在元组的使用上,我相信每个初学者都会跌进同一个深坑至少一次。

1 必入之浅坑

元组不用于列表的最显著的特点,就是无法更新元素的值。忘记或者忽略这一点,就会入坑。

Python 去方括号 python 方括号用法_Python 去方括号_15

做了那么多年开发,自学了很多门编程语言,我很明白学习资源对于学一门新语言的重要性,这些年也收藏了不少的Python干货,对我来说这些东西确实已经用不到了,但对于准备自学Python的人来说,或许它就是一个宝藏,可以给你省去很多的时间和精力。

别在网上瞎学了,我最近也做了一些资源的更新,只要你是我的粉丝,这期福利你都可拿走。

我先来介绍一下这些东西怎么用,文末抱走。