Python笔记 - ② 列表与字典
张板书的Python的学习笔记,包括笔记与DeBug的经历。 笔记② Python中的列表、字典
Python 编程语言中有四种集合数据类型:
- 列表(List)是一种有序和可更改的集合。允许重复的成员。
- 元组(Tuple)是一种有序且不可更改的集合。允许重复的成员。
- 集合(Set)是一个无序和无索引的集合。没有重复的成员。
- 词典(Dictionary)是一个无序,可变和有索引的集合。没有重复的成员。
一、列表
Python中的列表也比较傻瓜,大多数的数据类型均允许成组或混合放在一个列表当中,如字符串、整数型、矢量混合列表等。 同时,列表当中也允许嵌套列表、字典、数组、集合、矩阵等格式。
例:
list = ["字符串",18,1.414]
Large_list = [list,{"整数":18,"小数":1.414},(14,15)]
Python列表的索引规则:
- 起始位(第一位)索引值为0,截止位(最后一位)索引值为-1;
- 利用索引值调用列表中数据使用:list[索引值];
- 列表切片用冒号“:”,切片结果包含前索引值,不包含后索引值;
- 切片索引值可以缺失一头;
- 列表可以直接相加,视作切片的拼接;
test_list = [1,2,3,4,5]
print(test_list[0],test_list[-1])
>>>1 5
print(test_list[2:4],test_list[3:3])
>>>[3, 4] []
print(test_list[2:])
>>>[3, 4, 5]
list1 = [1,2,3,4,5]
list2 = [3,4,5]
print(list1 + list2)
>>>[1, 2, 3, 4, 5, 3, 4, 5]
列表当中的项可以更改,使用索引来调用,例:
list = [1,2,3,4,5]
print(list)
>>>[1, 2, 3, 4, 5]
list[1], list[2] = 10, [3]
print(list)
>>>[1, 10, [3], 4, 5]
使用len()函数调用列表长度,用.index调用列表中某项的索引(返回具有指定值的第一个元素的索引),例:
fruits = ["apple","banana","orange"]
print(len(fruits))
>>>3
print(fruits.index("banana"))
>>>1
常用列表函数
函数 | 描述 | ---------------------例-------------------------子— |
---|
append() | 在列表的末尾添加一个元素 | fruits.append(“peach”) | index() | 返回具有指定值的第一个元素的索引 | fruits.index(“banana”) | insert() | 在指定位置添加元素 | fruits.insert(2,“banana”) | remove() | 删除第一个为指定值的项目 | fruits.remove(“banana”) | sort() | 对列表进行排序 | fruits.sort() | clear() | 删除列表中的所有元素 | fruits.clear() | copy() | 返回列表的副本(若使用list2 = list1,则list1 中所做的更改也将自动在 list2 中进行,使用copy函数则不会) | list2 = fruits.copy() | count() | 返回具有指定值的元素数量。 | list.count(“元素”) | extend() | 将列表 list2 的元素(或任何可迭代的元素)添加到 list1 的末尾 | list1.extend(list2) | pop() | 删除指定位置的元素 | fruits.pop(2) | reverse() | 颠倒列表的顺序 | fruits.reverse() |
参考网站
https://www.w3school.com.cn/python/python_lists.asp
二、字典
字典是一个无序、可变和有索引的集合。 在 Python 中,字典用花括号编写,拥有键(key)和值(value);而python的字典也相对傻瓜,数据类型的影响几乎不存在。
- 创建字典后可以通过在方括号“ [ ] ”内引用其键名来访问字典的项目,或者使用get()函数来得到同样的结果。 通过引用其键名来更改特定项的值:
- 通过引用其键名来更改特定项的值
- len()函数获取字典长度
thisdict = {
"brand": "Porsche",
"model": "911",
"year": 1963
}
x = thisdict["model"]
y = thisdict.get("model")
print(x,y)
>>>911 911
thisdict["year"] = 2019
print(thisdict["year"])
>>>2019
遍历字典
逐个打印字典中的所有键名:
for x in thisdict:
print(x)
>>>brand
>>>model
>>>year
for x in thisdict.values():
print(x)
>>>Porsche
>>>911
>>>1963
for x, y in thisdict.items():
print(x, y)
>>>brand Porsche
>>>model 911
>>>year 1963
删除一项用pop()函数,而在字典中添加项很简单,和给某key赋值的方法一样:
thisdict.pop("model")
thisdict["location"] = “USA”
常用字典函数
函数 | 描述 | ---------------------例-------------------------子— |
---|
clear() | 删除字典中的所有元素 | dic.clear() | copy() | 返回字典的副本 | dic2 = dic.copy() | get() | 返回指定键的值 | dic.get(“year”) | keys() | 返回包含字典键的列表 | for value in dic.keys() | pop() | 删除指定键的键与元素 | dic.pop(“year”) | popitem() | 删除最后插入的键值对 | popitem()dic.popitem() | setdefault() | 返回指定键的值。如果该键不存在,则插入具有指定值的键。 | dic.setdefault(“缺省值”) | update() | 使用指定的键值对字典进行更新,相当于多加一组key与value | car.update({“color”: “White”}) | values() | 返回字典中所有值的列表 | for value in dic.values() |
参考网站
https://www.w3school.com.cn/python/python_lists.asp
|