python冷知识

辨析True/False/None/is/==

之前看到有人在写代码时,定义了一个列表l = []然后在处理过程中直接if l is True或者if l is None

首先,True和False的类型都是bool类型,它们的值分别等于1或者0。也就说所有等于1的变量都等于True,所有等于0的变量都等于False

所以,所以拿一个列表和True、False比较,永远是错误的。那么len(name_list) is True是正确的吗?既然True等于1,False等于0,用列表的长度和True、False比较总可以吧?不,仍旧错误!因为这里又混淆了is和==的区别:

  • ==比较的是两个变量的值,只要值相等该逻辑表达式就成立

  • is比较的是两个变量的值和id,什么时候可以is成立呢?前提是值必须相同,再次类型必须相同,0==True,但是0的类型是int,True的类型是bool,所以0 is True怎么可能会成立呢?最后,id必须一样,在一个作用域内,创建两个值相同的字符串,它们的id是一样的;但是创建两个值一样的列表,它们的id仍旧不一样!

在这里插入图片描述
搞清楚了==和is后,再来聊聊None

刚才说了True和False的误区后,其实还有部分人另辟蹊径,使用None来判断列表是否为空,只可惜,越错越远

[] is None[] == None这两种写法,到底谁对谁错呢?都错!

None是一个特殊的变量,它的类型是NoneType,意思就是没有类型,也没有值,那么想判断空列表、空字典、空元组,怎么可能和None比?

但是None可以重新转换成其余的变量类型的,比如a = None,然后a = [1,2]。另外在python3中,不可以用==接None,必须使用is,为什么呢?因为None很特殊,它只有唯一一个,意思就是定义再多的None,其实都是那个唯一的None,所以只能用is None啦。

最后,当你想判断列表为空,到底该怎么办呢?

我们知道if判断的是语句的真假,什么是真假?在python中,假有以下几种情况:

  1. 所有空列表、空字符串、空字典等等都是假

  2. 所有零值都是假,False也是假

  3. 最后,最特殊的None也是假

除假以外全部为真。所以判断列表为空,只需要if l:即可。

python最大整数是多少?

很多帖子上都使用了sys.maxint,得到的值为2147447412 ,可是这个用法已经弃用了,新版本的用法为:sys.maxsize,在64位机上大小扩展到了9223372036854775807,达到了惊人的九百二十二万亿。可惜,我在测试type(sys.maxsize**2)之后发现仍旧是一个整数,也就是说python的int整数已经没有上限了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python是一门十分热门的编程语言,它在各个领域都有广泛的应用。虽然大部分的毕业生可能会选择一些热门的毕设题目来研究,但是对于一些冷门的毕设题目,仍然有一些值得考虑的方向。 首先,可以考虑使用Python来开发一个智能家居系统。该系统可以利用传感器等设备获取家庭环境的数据,并通过Python的分析和处理功能,实现对家庭环境进行智能化的控制。例如,可以根据室内温度自动调节空调温度,根据人体活动情况自动打开或关闭照明等。 其次,可以利用Python来开发一个船舶轨迹预测系统。通过收集和分析船舶的历史轨迹数据,利用Python的机器学习算法,可以对船舶的轨迹进行预测,并提供给相关部门和船舶管理者参考。这对于提高船舶航行的安全性和效率具有重要的意义。 另外,可以考虑使用Python来开发一个音乐生成系统。利用Python的音乐生成库和算法,可以自动生成新的音乐曲目,实现音乐的创作和表演的自动化。这对于音乐爱好者和创作者来说,是一个有趣且具有挑战性的毕设方向。 此外,还可以考虑利用Python来开发一个智能交通系统。通过收集和分析交通流量数据,结合Python的数据处理和机器学习算法,可以预测和优化城市的交通流动,并提供实时的交通建议。这对于改善城市交通拥堵问题具有重要的实际意义。 总之,虽然Python的应用场景广泛,但是仍然有一些冷门的毕设题目可以探索和研究。通过结合Python的强大功能和其他相关的技术和领域知识,可以实现创新和有意义的毕设项目。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值