1.字典
1.1、什么是字典
字典是另一种可变容器模型,且可存储任意类型对象,并且字典是Python中唯一的映射类型。字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中 ,格式如下所示:
zoran = {'age' : 22,'job' : 'student'}
print (zoran)
结果如下:
1.2、访问字典中的值
字典中的键必须是唯一的,但值则不必。值可以取任何数据类型,与键相关联的值可以是数字、字符串、列表乃至字典。事实上,可将任何Python对象用作字典中的值。访问字典中的值时,可以使用键来访问与之相关联的值。示例如下:
zoran = {'age' : 22,'job' : 'student'}
print (zoran)
print (zoran['age'])
print (zoran['job'])
结果如下:
1.3、修改、添加字典中的值
字典是一种动态结构,可随时在其中添加键—值对。要添加键—值对,可依次指定字典名、用方括号括起的键和相关联的值。要修改字典中的值,可依次指定字典名、用方括号括起的键以及与该键相关联的新值。示例如下:
zoran = {'age' : 22,'job' : 'student'}
zoran['age'] = 24 #修改字典中的值
zoran['job'] = 'coder'
zoran['name'] = 'zzz' #删除字典中的值
print (zoran)
结果如下:
1.4、删除字典中的值
能删单一的元素也能清空字典,清空只需一项操作。显示删除一个字典用del命令。
zoran = {'age' : 22,'job' : 'student'}
del zoran['age'] # 删除键 'age'
print (zoran)
zoran.clear() # 清空字典
print (zoran)
del zoran # 删除字典
print (zoran)
结果如下:
del字典后,字典zoran不存在就出现错误。
1.5、字典键的特性
字典值可以是任何的python对象,可以是标准的对象,也可以是用户定义的,但键不行。
1.同一个键不能出现两次,如果同一个键被赋值两次,只有后一个值会被赋值。
2.键必须不可变,所以可以用数字,字符串或元组充当,而用列表就不行。
zoran = {'age' : 22,'job' : 'student','age' : 25}
print (zoran['age'])
结果如下:
1.6、字典内置函数
函数 | 描述 |
---|---|
len(dict) | 计算字典元素个数,即键的总数 |
str(dict) | 输出字典,以可打印的字符串表示 |
type(variable) | 返回输入的变量类型,如果变量是字典就返回字典类型 |
2.集合
2.1、什么是集合
集合(set)是一个无序的不重复元素序列。可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。
创建格式:
parame = {value01,value02,...}
或者
set(value)
2.2、集合的基本操作
1.添加元素
s.add( x ) 将元素 x 添加到集合 s 中,如果元素已存在,则不进行任何操作。
s.update( x ) 可以添加元素,且参数可以是列表,元组,字典等。
2.移除元素
s.remove( x ) 将元素 x 从集合 s 中移除,如果元素不存在,则会发生错误。
s.discard( x ) 移除集合中的元素,且如果元素不存在,不会发生错误。
s.pop() 可以设置随机删除集合中的一个元素
3.计算集合元素个数
len(s) 计算集合 s 元素个数
4.清空集合
s.clear() 清空集合 s
5.判断元素是否在集合中存在
x in s 判断元素 x 是否在集合 s 中,存在返回 True,不存在返回 False
gather = set(("a","b","c"))
print (gather)
gather.add("d")
print (gather)
gather.update([1,2,3])
print (gather)
gather.remove(1)
print (gather)
gather.discard(2)
print (gather)
gather.pop()
print (gather)
print (len(gather))
"a" in gather
gather.clear()
print (gather)
结果如下:
2.3、集合内置方法完整列表
3.判断语句(要求掌握多条件判断)
3.1、if语句
python中if语句的一般形式如下所示:
if condition_1:
statement_block_1
elif condition_2:
statement_block_2
else:
statement_block_3
如果 “condition_1” 为 True 将执行 “statement_block_1” 块语句
如果 “condition_1” 为False,将判断 “condition_2”
如果"condition_2" 为 True 将执行 “statement_block_2” 块语句
如果 “condition_2” 为False,将执行"statement_block_3"块语句
注意
1.每个条件后面要使用冒号 :,表示接下来是满足条件后要执行的语句块
2.使用缩进来划分语句块,相同缩进数的语句在一起组成一个语句块
3.在python中没有switch–case语句
if中常用的操作运算符:
操作符 | 描述 |
---|---|
< | 小于 |
<= | 小于或等于 |
> | 大于 |
>= | 大于或等于 |
== | 等于,比较两个值是否相等 |
!= | 不等于 |
if嵌套
在嵌套 if 语句中,可以把 if…elif…else 结构放在另外一个 if…elif…else 结构中
if 表达式1:
语句
if 表达式2:
语句
elif 表达式3:
语句
else:
语句
elif 表达式4:
语句
else:
语句
4.三目表达式
python的三目表达式的语法格式:
为真时的结果 if 判断条件 else 为假时的结果(注意,没有冒号)
x = x+1 if x%2==1 else x
5.循环语句
5.1、while 循环
1.while语句的一般形式:
需要注意冒号和缩进,另外,在 Python 中没有 do…while 循环
while 判断条件:
语句
2.while 循环使用 else 语句
在 while … else 在条件语句为 false 时执行 else 的语句块:
count = 0
while count < 5:
print (count, " 小于 5")
count = count + 1
else:
print (count, " 大于或等于 5")
结果如下:
5.2、for循环
for循环可以遍历任何序列的项目,如一个列表或者一个字符串。
1.for循环的一般格式如下:
#for <variable> in <sequence>:
# <statements>
a = "zazazazaza"
for x in a:
print (x)
结果如下:
2.range()函数
如果需要遍历数字序列,可以使用内置range()函数,它会生成数列。
for i in range(5):
print(i)
for i in range(6,16,2) :
print(i)
结果如下:
3.break、continue和pass 语句
break 语句可以跳出 for 和 while 的循环体;continue语句被用来过当前循环块中的剩余语句,然后继续进行下一轮循环;pass是空语句,是为了保持程序结构的完整性。pass 不做任何事情,一般用做占位语句。
for letter in 'zoran':
if letter == 'r':
break #字母为r时跳过循环
print ('当前字母为 :', letter)
for letter in 'zoran':
if letter == 'r': #字母为r时跳过输出
continue
print ('当前字母 :', letter)
for letter in 'zoran':
if letter == 'r':
pass
print ('执行pass块')
print ('当前字母 :', letter)
结果如下: