1.None是一个空值,空值是Python里的一个特殊值,用None表示。可以将None赋值给任何变量。

var = None; print(var) # None
if var is None:
    print("var has a value of None") # print
else:
    print("var:", var)

      2.None有自己的数据类型,它属于NoneType类型。None是NoneType数据类型的唯一值。

print(type(None)) # <class 'NoneType'>

      3.None不等于空字符串、空列表、0,也不等同于False。

a = ''; print(a == None) # False
b = []; print(b == None) # False
c = 0; print(c == None) # False
d = False; print(c == None) # False

      4.None是一个特殊的空对象,可以用来占位。

L = [None] * 5; print(L) # [None, None, None, None, None]

      5.对于定义的函数,如果没有return语句,在Python中会返回None;如果有不带值的return语句,那么也是返回None。

def func():
    x = 3
obj = func(); print(obj) # None

def func2():
    return None
obj2 = func2(); print(obj2) # None

def func3():
    return
obj3 = func3(); print(obj3) # None

      6.对于定义的函数,如果默认参数是一个可修改的容器如列表、集合或字典,可以使用None作为默认值。

def func4(x, y=None):
    if y is not None:
        print("y:", y)
    else:
        print("y is None")
    print("x:", x)
x = [1, 2]; obj4 = func4(x) # y is None
y = [3, 4]; obj4 = func4(x, y) # y: [3, 4]

      GitHubhttps://github.com/fengbingchun/Python_Test

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐