Python学习笔记8——列表、字典、元组

参考书籍:《Learning_Python_5th_Edition.pdf》,一本英文书呢,我上传到百度网盘吧,请点击这里,密码是:kym3

Lists 列表

The Python list object is the most general sequence provided by the language. 最常用,sequence指序列,positionally ordered collections,按顺序(位置)地对象的集合,字符串string也是一种序列。列表python中已经是一个定义好的类。

如:

nl = [1,2,5,3,5]  # nl是就是类list的一个对象,中括号[],列表的元素可以时任意类型,甚至是列表,列表的元素可以更改。

 # 实验一些list的方法:

nl.count(5)       # 计数,看总共有多少个5

nl.index(3)       # 查询 nl 的第一个3的下标

nl.append(6)            # 在 nl 的最后增添一个新元素6

nl.sort()               # 对nl的元素排序

nl.pop()          # 从nl中去除最后一个元素,并将该元素返回。

nl.remove(2)            # 从nl中去除第一个2

nl.insert(0,9)          # 在下标为0的位置插入9

Tuple 元组

元组tuple,小括号(),tuple和list的主要区别在于,一旦建立,tuple元组的各个元素不可再变更,而列表可以更改,别的都差不多。

元素的引用

>>>s1 = (2, 1.3, 'love', 5.6, 9, 12, False)         # s1是一个tuple

>>>s2 = [True, 5, 'smile']                          # s2是一个list

序列元素的下标从0开始:

>>>print(s1[0])

>>>print(s2[2])

>>>print(s3[1][2])

由于list的元素可变更,可以对list的某个元素赋值:

>>>s2[1] = 3.0

>>>print(s2)

如果对tuple做这样的操作,会得到错误提示。

所以,可以看到,序列的引用通过s[<int>]实现, int为下标

其他引用方式

范围引用: 基本样式[下限:上限:步长]

>>>print(s1[:5])             # 从开始到下标4 (下标5的元素 不包括在内)

>>>print(s1[2:])             # 从下标2到最后

>>>print(s1[0:5:2])          # 从下标0到下标4 (下标5不包括在内),每隔2取一个元素 (下标为0,2,4的元素)

>>>print(s1[2:0:-1])         # 从下标2到下标1

从上面可以看到,在范围引用的时候,如果写明上限,那么这个上限本身不包括在内。

尾部元素引用

>>>print(s1[-1])             # 序列最后一个元素

>>>print(s1[-3])             # 序列倒数第三个元素

同样,如果s1[0:-1], 那么最后一个元素不会被引用 (再一次,不包括上限元素本身)

字符串是元组

字符串是一种特殊的元组,因此可以执行元组的相关操作。

>>>str = 'abcdef'

>>>print(str[2:4])

Dictionary 字典

词典(dictionary)也是一个类。与列表相似,词典也可以储存多个元素。

常见的创建词典的方法:

>>>dic = {'tom':11, 'sam':57,'lily':100}

>>>print type(dic)

词典和表类似的地方,是包含有多个元素,每个元素以逗号分隔。但词典的元素包含有两部分,键和值,常见的是以字符串来表示键,也可以使用数字或者真值来表示键(不可变的对象可以作为键)。值可以是任意对象。键和值两者一一对应。

比如上面的例子中,‘tom’对应11,'sam对应57,'lily'对应100

与表不同的是,词典的元素没有顺序。你不能通过下标引用元素。词典是通过键来引用。

>>>print dic['tom']

>>>dic['tom'] = 30

>>>print dic

构建一个新的空的词典:

>>>dic = {}

>>>print dic

在词典中增添一个新元素的方法:

>>>dic['lilei'] = 99

>>>print dic

这里,我们引用一个新的键,并赋予它对应的值。

词典元素的循环调用

dic = {'lilei': 90, 'lily': 100, 'sam': 57, 'tom': 90}
for key in dic:
    print dic[key]

 

在循环中,dict的每个键,被提取出来,赋予给key变量。

通过print的结果,我们可以再次确认,dic中的元素是没有顺序的。

词典的常用方法

>>>print dic.keys()           # 返回dic所有的键

>>>print dic.values()         # 返回dic所有的值

>>>print dic.items()          # 返回dic所有的元素(键值对)

>>>dic.clear()                # 清空dic,dict变为{}

另外有一个很常用的用法:

>>>del dic['tom']             # 删除 dic 的‘tom’元素

del是Python中保留的关键字,用于删除对象。

与表类似,你可以用len()查询词典中的元素总数。

>>>print(len(dic))

原文地址:https://www.cnblogs.com/xv-shilin/p/9622482.html