下面是一个代码片段,在代码中通过自上而下的方式,我打印了名为“podium”的变量类型 代码如下:
def frequence(entranche):
podium = []
print("premier podium", type(podium))
for item in entranche:
print ("deuxieme podium", type(podium))
scat = len(entranche)
for indice in range (len(entranche)):
if entranche[indice] == item:
scat -= 1
frequence = len(entranche) - scat
podium = podium.append(frequence)
print("troisieme podium", type(podium))
plus_haute_frequence = max(podium)
return(plus_haute_frequence)
print(frequence("Je suis né dans le béton Coincé entre deux maisons".split()))
在代码之后, 这是输出:
premier podium <class 'list'>
deuxieme podium <class 'list'>
troisieme podium <class 'NoneType'>
我不明白为什么讲台变量会失去他的类型。你知道吗
有人对我说:
“现在,我想你的问题是:特洛伊赛姆讲台-对吗?因为讲台=讲台.append(频率)。只需将新值附加到列表中,重新分配变量在这里是不正确的。就这么做吧讲台.append(频率)。你知道吗
是的。但我不明白为什么。可能我们认为这是一个新的变量。如果我需要用一个方法来做一些事情,在写变量=变量.方法(){在ruby语言中有一个带“!”的方法没有'!“}你知道吗
这是因为
append()
方法就地修改列表。它不会返回一个新的列表,但会修改作为参数给定的列表。它的返回值是None,这就是为什么您的“troisieme podium”类型是NoneType。你知道吗所以这一行:
应该是简单的:
因为
append
总是返回None。您可以在终端中轻松验证这一点。你知道吗没有不修改的附加:最好的方法是复制列表并附加到副本。你知道吗
相关问题 更多 >
编程相关推荐