在Python中分配空值或字符串

我想了解是否在分配空值和空输出之间存在差异,如下所示:

1>分配一个像这样的值

string = ""

2>作为输出返回空值

string = "abcd:"
str1, str2 = split(':')

换句话说,1>和'2>中的'str2'中的'string'值是否有差异? 如果一个方法作为参数传递,如何看到'str2'的值?


使用==检查相等性

>>> string = ""
>>> s = "abcd:"
>>> str1, str2 = s.split(':')
>>> str1
'abcd'
>>> str2
''
>>> str2 == string
True

也许你试图与is进行比较。 这是为了测试身份: a is b等同于id(a) == id(b)

或者检查两个字符串是否为空:

>>> not str2
True
>>> not string
True
>>> 

所以这两个都是空的...


如果你将检查case-1中的id(string)和case2中的id(str2) ,它会给你相同的值,两个字符串对象都是相同的。

def mine(str1, str2):
    print str1, str2

看到上面的方法你可以调用mine(* string.split(':'))它会通过'abcd:' as str1 ='abcd'和str2 =''。


换句话说,1>和'2>中的'str2'中的'string'值是否有差异?

不,没有区别,都是空字符串""

如果一个方法作为参数传递,如何看到'str2'的值?

该方法会将其视为长度为0的字符串,换句话说,是一个空字符串。

链接地址: http://www.djcxy.com/p/19587.html

上一篇: Assigning empty value or string in Python

下一篇: A string tokenizer in C++ that allows multiple separators