程序员最近都爱上了这个网站  程序员们快来瞅瞅吧!  it98k网:it98k.com

本站消息

站长简介/公众号

  出租广告位,需要合作请联系站长

+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

Python面试总结篇

发布于2019-08-08 09:39     阅读(553)     评论(0)     点赞(0)     收藏(4)


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,同一优先级从左往右计算。

参考如下:

img

持续更新



所属网站分类: 技术文章 > 博客

作者:你敢说我不帅

链接:https://www.pythonheidong.com/blog/article/12733/6f31d07f65a9fe3f28e6/

来源:python黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

0 0
收藏该文
已收藏

评论内容:(最多支持255个字符)