python 运算符

逻辑运算符与逻辑表达式

  Python的逻辑运算符与C#有较大区别,Python用关键字and、or、not代替了C#语言中的逻辑运算符&&、|| 和! ,此外Pyhton中参与逻辑运算的操作数不限于布尔类型,任何类型的值都可以参与逻辑运算,参见1.2.2节(布尔类型)的讨论。powered by 25175.net

  用逻辑运算符将操作数或表达式连接起来就是逻辑表达式。与C#一样,Python中的逻辑表达式是“短路”执行的,也就是说只有需要时才会进行逻辑表达式右边值的计算,例如表达式 a and b 只有当a为True时才计算b。思考一下,if (0 and 10/0): 这条语句会引发除数为零的异常吗?

  此外还要注意:在Python 中,and 和 or 所执行的逻辑运算并不返回布尔值,而是返回它们实际进行比较的值之一。下边是一个例子:

1 print 'a' and 'b'
2  #输出b
3  print '' and 'b'
4  #输出空串

 

关系运算符与关系表达式

  关系运算实际上是逻辑运算的一种,关系表达式的返回值总是布尔值。Python中的比较操作符与C#是完全一样的,包括==、!=、>、<、>=和<=共6种。

  除了基本的变量比较外,Python的关系运算符还包括身份运算符is。在Python中,is用来检验两个对象在内存中是否指向同一个对象(还记得“一切数据皆对象吗,一切命名皆引用”吗?)。注意Python中is的含义和C#有所不同,在C#中,is 操作符被用于动态地检查运行时对象类型是否和给定的类型兼容。例如,运算e is T ,其中e 是一个对象,T 是一个类型,返回值是一个布尔值,它表示e是否能转换于 T 类型。

 

三元运算符

  三元运算符是C/C++/C#一系语言所特有的一类运算符,例如,对表达式b? x: y,先计算条件b,然后进行判断,如果b的值为true,则计算并返回x的值,否则计算并返回y的值。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值