Python知识疑难点汇集

来源:互联网 发布:怎么理解面向切面编程 编辑:程序博客网 时间:2024/05/03 12:57

1、Python中的None与 NULL(即空字符)的区别

(1)是不同的一种数据类型

>>>type(None)<class 'NoneType'>
  • 1
  • 2

表示该值是一个空对象,空值是Python里一个特殊的值,用None表示。None不能理解为0,因为0是有意义的,而None是一个特殊的空值。

>>>type('')<class ''str'>
  • 1
  • 2

你可以将None赋值给任何变量,也可以将任何变量赋值给一个None值得对象

(2)判断的时候 均是False

>>> ff=None>>> if ff:    print('ff is define')执行结果:无打印!
  • 1
  • 2
  • 3
  • 4
  • 5

(3)属性不同

使用dir()函数返回参数的属性、方法列表。如果参数包含方法dir(),该方法将被调用。如果参数不包含dir(),该方法将最大限度地收集参数信息。

dir(None)['__bool__', '__class__', '__delattr__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__le__', '__lt__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__']
  • 1
  • 2
dir('')['__add__', '__class__', '__contains__', '__delattr__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__g

原创粉丝点击