# dict全称dictionary,在其他语言中也称为map,使用键-值(key-value)存储,具有极快的查找速度。
# dict内部存放的顺序和key放入的顺序是没有关系的
# 根据同学的名字查找对应的成绩,如果用list实现,需要两个list
names = [
'Michael',
'Bob',
'Tracy']
scores = [95, 75, 85
]
# dict实现,只需要一个“名字”-“成绩”的对照表
d = {
'Michael': 95,
'Bob': 75,
'Tracy': 85
}
print(d[
'Michael'])
# 95
# 通过key 添加或者覆盖
d[
'Adam'] = 67
print(d)
# {'Michael': 95, 'Bob': 75, 'Tracy': 85, 'Adam': 67}
d[
'Adam'] = 66
print(d)
# {'Michael': 95, 'Bob': 75, 'Tracy': 85, 'Adam': 66}
# key不存在,dict就会报错
# 判断key是否存在 in 或者get
print(
'Thomas' in d)
# False
print(d.get(
'Thomas'))
# None
# 删除某个元素
d.pop(
'Bob')
print(d)
# {'Michael': 95, 'Tracy': 85, 'Adam': 66}
# 和list比较,dict有以下几个特点:
# --查找和插入的速度极快,不会随着key的增加而变慢;
# --需要占用大量的内存,内存浪费多。
# --------------------------------------------------------
# set set和dict类似,也是一组key的集合,但不存储value。由于key不能重复,所以,在set中,没有重复的key。
# 创建一个set,需要提供一个list作为输入集合,复元素在set中自动被过滤
s = set([1, 1, 2, 2, 3, 3
])
print(s)
# {1, 2, 3} # 显示的{1, 2, 3}只是告诉你这个set内部有1,2,3这3个元素,显示的顺序也不表示set是有序的
# 添加元素 add
s.add(4
)
print(s)
# {1, 2, 3, 4}
# remove 删除元素
s.remove(4
)
print(s)
# {1, 2, 3}
# 多个set操作
s1 = set([1, 2, 3
])
s2 = set([2, 3, 4
])
print(s1 & s2)
# {2, 3}
print(s1 | s2)
# {1, 2, 3, 4}
# 不可变对象
# str 不可变对象
a =
'abc'
a.replace('a',
'A')
print(a)
# abc
a =
'abc'
b = a.replace(
'a',
'A')
print(b)
# Abc
list create
list(range(1, 11))
# [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
L =
[]
for x
in range(1, 11
):
L.append(x *
x)
print(L)
# [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
# 功能同上
LL = [x * x
for x
in range(1, 11
)]
print(LL)
# [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
ll = [x * x
for x
in range(1, 11)
if x % 2 ==
0]
print(ll)
# [4, 16, 36, 64, 100]
lc = [m + n
for m
in 'ABC' for n
in 'XYZ']
print(lc)
# ['AX', 'AY', 'AZ', 'BX', 'BY', 'BZ', 'CX', 'CY', 'CZ']
import os
# 导入os模块,模块的概念后面讲到
dr = [d
for d
in os.listdir(
'.')]
# os.listdir可以列出文件和目录
print(
dr) # ['dict_set7.py', 'enc3.py', 'for6.py', 'func8.py', 'hello.py', 'hello2.py', 'if5.py', 'iteration10.py', 'listCreate.py', 'list_tuple4.py', 'pian9.py']
d = {
'x':
'A',
'y':
'B',
'z':
'C'}
for k, v
in d.items():
print(k,
'=', v)
# x = A
# y = B
# z = C
L = [
'Hello',
'World',
'IBM',
'Apple']
print([s.lower()
for s
in L])
# ['hello', 'world', 'ibm', 'apple']
转载于:https://www.cnblogs.com/shaozhiqi/p/11543509.html
相关资源:垃圾分类数据集及代码