Python的五个小技巧
# encoding=utf-8
# 一, 如何从一个函数返回多个值,只需要返回元组即可
def get_result():
return ('0000', '成功')
# 由于返回的是元组,所以可以省去小括号()
code, msg = get_result()
print('code: ', code)
print('msg: ', msg)
# 又比如:交换两个值
a = 10
b = 20
a, b = b, a
print('a: ', a)
print('b: ', b)
# 二, 列表推导,快速构建集合(把list中大于2的元素乘以2)
list1 = [2, 3, 4]
list2 = [i * 2 for i in list1 if i > 2]
print(list2)
# 三, 方法参数使用 * 或 ** 前缀接收元组或字典
def power_sum(power, *args):
total = 0
for i in args:
total += pow(i, power)
return total
# 3*3 + 4*4
print('power_sum: ', power_sum(2, 3, 4))
# 四, lambda语句
# lambda 语句可以创建一个新的函数对象。
# 从本质上说,lambda 需要一个参数,后跟一个表达式作为函数体,
# 这一表达式执行的值将作为这个新函数的返回值。
points = [{'x': 3, 'y': 5},
{'x': 5, 'y': 3}]
asc_y = lambda item: item['y']
points.sort(key=asc_y)
print('points: ', points)
# 五, assert断言判断参数
mylist = ['apple']
assert len(mylist) >= 1
mylist.pop()
# 此刻抛出AssertionError
assert len(mylist) >= 1
网友评论