Python中None和'空字符串的区别

如题所述

区别:
None是一个空的对象,代表什么都没有。
而'',是一个字符串对象,代表一个空的字符串。

 

示例,当使用None时:

a='abc'
b= None
print a+b

此时会报错:TypeError: cannot concatenate 'str' and 'NoneType' objects

 因为,NnoeType不允许和str进行+连接

使用:

a='abc'
b= ''
print a+b
 
>>> 
abc

正常,因为字符串可以相互连接。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-03-30

    None是值,pass是空语句,

    a=10
    if a>8:
    pass
    print a

    这个例子中a>8后什么也补执行,相当于是个空操作.

    至于None就是不存在的意思,或者在判断语句中就是“false"的意思。

    两者区别:
    None是一个空的对象,代表什么都没有。
    而是一个字符串对象,代表一个空的字符串。
    只有字符串才能和字符串相互连接。

      当使用None时:
      areaCode = None
      for val in valList:
      areaCode += ','        
      此时就会报错:TypeError: unsupported operand type(s) for +=: 'NoneType' and 'unicode'
      NnoeType不允许和unicode对象进行+=连接。

      使用:
      areaCode = ''
      for val in valList:
      areaCode += ','     
      此时正常。

    本回答被网友采纳