首页 > 编程语言 > 详细

Python面试总结篇

时间:2019-08-07 17:53:50      阅读:72      评论:0      收藏:0      [点我收藏+]

Python Coding Interview Questions and Answers


逻辑运算赋值

先举例理解 数字/字符串布尔值 是如何转换的

  • 数字转布尔值

    v1 = 0
    v2 = bool(v1)
    print(v2)       # ---> False
    # 总结:只有0转换成布尔值是False,其它都是True。
  • 字符串转布尔值

    v1 = ""
    v2 = bool(v1)
    print(v2)       # ---> False
    # 总结:只有空字符串转换成布尔值是False,其他都是True。
  • 布尔值转数字或者字符串使用非常少,了解即可。转换为数字只有0(False)和1(True),转换为字符串只有空字符串("")和字符串("True")。

然后我们来看这个面试题

v1 = 1 or 9
v2 = 0 or 9
# print(v1, v2)会输出什么?

解: 当和逻辑运算符一起存在时会自动转换为布尔值,根据上面的例子得知,1是True,9也是True,0是False,v1取到第一个值等式就成立了,v2中因为0是False所以还需要继续看后面的值,所以输出1 9 ,v1和v2都为整型。

扩展

v1 = 3>4 or 4<3 and 1==1
print(v1)     # ---> False,有比较运算

v2 = 1 and 9 or "" and 6
print(v2)     # ---> 9
# 在没有()的情况下not优先级高于and,and优先级高于or,即优先级关系为( ) > not > and > or,同一优先级从左往右计算。

参考如下:

技术分享图片

持续更新

Python面试总结篇

原文:https://www.cnblogs.com/joneyhsiao/p/11316769.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!