python 列表、字典、集合推导式和异常

推导式

推导式分为:列表推导式,字典推导式、集合推导式

列表推导式

变量名=[表达式 for 变量 in 列表] 或者
变量名= [表达式 for 变量 in 列表 if 条件]
执行流程:
遍历出列表中的内容给变量,表达式根据变量值进行逻辑运算。
或者遍历列表中的内容给变量,然后进行判断,符合的值在给表达式。
求lst=[1,2,3,4]每个元素的平方然后添加到新的列表中
普通for循环

lst=[1,2,3,4]
new_lst = []
for i in lst:
    new_lst.append(i * i)
print(new_lst)

列表推导式

new_lst = [i * i for i in lst]
print(new_lst)

字典推导式

字典推导式:
格式: 变量名={表达式 for 临时变量 字典}
将字典中的key和value 进行对换
普通方式

for key, value in dic.items():
    dic1[value] = key
print(dic1)  # {10: 'a', 12: 'b'}

字典推导式

dic1 = {value: key for key, value in dic.items()}
print(dic1)  # {10: 'a', 12: 'b'}

集合推导式

集合推导式:
集合推导式跟列表推导式非常相似,唯一区别在于用{}代替[]
求每个元素的平方值,自动去重

l = [-1, 2, 4, -2]
set1 = {}
set1 = {i * i for i in l}
print(set1)  # {16, 1, 4}

捕获异常

捕获异常基本语法:
try:
…代码1…
…代码2…
except 异常类型:
try中一旦检测到异常,就执行这个位置的逻辑

try:
    print('程序开始了..')
    print(1 / 0)
except ZeroDivisionError:
    print('除数不能为0!!!')
print('程序结束了...')
程序开始了..
除数不能为0!!!
程序结束了...

多分支结构格式
try:
执行的代码…
except 异常类型:
捕获异常1
except 异常类型 :
捕获异常2
except 异常类型:
捕获异常3

元组形式结构
try:
执行的代码…
except(异常类型1,异常类型2,异常类型3):
捕获异常…

try:
	print('程序开始了.....')
	lst=[1,3]
	print(1/0)
	print(lst[2])
except(ImportError,ZeroDivisionError)
	print('程序错误...')
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值