“”在python中意味着什么?
例如:
def makePassword(length) :
password = ""
密码变为什么和/或该声明是什么意思? 它重新定义了密码吗?它是否只是再次强调了密码已经在上面定义的事实(假设已经存在)。仅供参考:这只是代码的一部分。
答案 0 :(得分:2)
在
password = ""
将password
设置为空字符串(即由零个字符组成的字符串)。
值得注意的是,这与不分配password
任何内容(在这种情况下它将不存在)不同,并且与将密码设置为None
不同。
答案 1 :(得分:0)
空字符串(长度为0)。密码变为空字符串。
是否重新定义了密码?
它在该功能的范围内。或者,如果密码被声明为全局。
答案 2 :(得分:0)
正是这样,“”。它本质上是一个“空”字符串。它只是一个字符串类型的对象。
答案 3 :(得分:0)
在生成字符串时,有时会一次创建一个字符或以块的形式创建结果。从函数名称我怀疑这个特定算法正在做类似的事情。
如果进程是迭代的(在循环内发生),将最新的块添加到已经累积的任何块的自然方法是使用诸如
之类的语句password = password + new_chunk
现在可以更简洁地写成
password += new_chunk
这将获取password
变量的现有值并将新块添加到其中,替换password
的旧值。
在没有为password
变量赋值的情况下执行此语句会导致异常,但是(特别是您会看到NameError,因为该语句要求您以password
的现有值开头,并且它没有一个)。因此,在循环之前,您将空字符串(不包含字符的字符串)分配给变量,从而避免了不方便但常见的错误。