python进阶----推导式,异常

#ListDictSet
#variable = [out_exp for out_exp in input_list if out_exp ==2]
multiples = [i for i in range(30) if i %3 is 0]
multiples =[i for i in range(20) if i //2 is not 0]
multiples= [x**2 for x in range(10)]
print(multiples)
mcase = {'a': 10, 'b': 34, 'A': 7, 'Z': 3}
#这个是字典的推导式
mc = {
	k.lower() : mcase.get(k.lower(),1)
	for k in mcase.keys()
}
print(mc)
#快速对换一个字典的键和值:
mc1={v: k for k, v in mcase.items()}
print(mc1)
#集合推导式(set comprehensions)
#它们跟列表推导式也是类似的。 唯一的区别在于它们使用大括号{}。 举个例子
squared = {x**2 for x in [1, 1, 2]}
print(squared)

"""异常
处理多个异常
"""
# try:
# 	file =open('test.txt','rb')
# except IOError as e:
# 	raise "happpen a IOError !"
#第一种方法需要把所有可能发生的异常放到一个元组里
try:
	 file = open('test.txt','rb')
except (IOError,EOFError) as e:
	print("多种异常") 
else:#我们常常想在没有触发异常的时候执行一些代码。这可以很轻松地通过一个else从句来达到。
	# 这里的代码只会在try语句里没有触发异常时运行,
    # 但是这里的异常将 *不会* 被捕获
	print("else exception ")
finally:#最后总会执行
	print("finaly do some thing!")
# try:
# 	file =open('text.txt','rb')
# except IOError as e:
# 	raise e
# except EOFError as e:
# 	raise e
# except Exception:
# 	raise 
#lambda表达式 lambda 参数:操作(参数)
add = lambda x,y : x + y
print(add(3,5))
a = [(1, 2), (4, 1), (9, 10), (13, -3)]
print(a.sort(key = lambda x : x[1]))
print(a)
list1 =[4,2,3]
list2 = [12,13,14]
data = zip(list1,list2)
data = sorted(data)
list1,list2 = map(lambda t: list(t), zip(*data))
print(list1)
print(list2)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值