xxx=torch.tensor([True,True,False,True])
xxxz=torch.tensor([True,False,False,True])
def zzz():
asdf=[]
for i in range(4):
if xxx[i] == xxxz[i] and xxx[i] == True:
asdf.append(i)
return asdf
zzz()
我的預期是:[0,3]。
但結果是:[0]。我不明白這有什么問題。我是否錯誤地使用了附加?
uj5u.com熱心網友回復:
你的 return 陳述句在forand里面if。在函式定義層面把它拉到外面
def zzz():
asdf=[]
for i in range(4):
if xxx[i] == xxxz[i] and xxx[i] == True:
asdf.append(i)
# return asdf # NOPE
return asdf # THIS
早些時候,您的函式在遇到 0 后才回傳。這就是 3 丟失的原因。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/369952.html
