Python海象运算符

海象运算符语法为(variable_name := expression or value),看起来很像是一个赋值运算符,但是其实也可以当做赋值运算符去看。

因为这个语法的作用是左边是一个变量的名称,后面是一个表达式或者值。

作用就是在进行条件表达式或者是列表推导式的代码编写时将代码进行简写,把声明变量值的代码放在这个运算符中去实现。

用法

(1)海象运算符可以用在if/else之中进行条件判断时为起止条件进行赋值,具体实例如下:

if a := 15 > 10:
    print('hello, world!')


#不用海象运算符相当于
a=15
if a > 10:
    print('hello, world!')

在这个示例之中原本应该是先声明a = 15,然后再编写条件a > 10的,但是海象运算符就简化了这一句代码。

(2)或者是用在列表推导式上也很不错,因为列表推导式本身也就是迭代列表的简写方式,示例如下:

nums = [1, 2, 3, 4]
def f(x):
    print('运行了函数f(x)1次。')
    return x ** 0.5
print([n for i in nums if (n := f(i)) > 5])


#不用海象运算符相当于
nums = [1, 2, 3, 4]
def f(x):
    print('运行了函数f(x)1次。')
    return x ** 0.5

print([f(i) for i in nums if f(i) > 5])
#不过这里f(i)调用了两次

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值