Python 如何检查一个列表中某些数字的平方是否在第二个列表中
所以,在我的代码战实践中,我偶然发现了一个问题,目前我正在研究如何实际检查另一个列表中的方块 我通过了一些测试,但当我实际尝试提交它时,它会引发某些错误,测试结果是错误的Python 如何检查一个列表中某些数字的平方是否在第二个列表中,python,arrays,return,python-3.6,Python,Arrays,Return,Python 3.6,所以,在我的代码战实践中,我偶然发现了一个问题,目前我正在研究如何实际检查另一个列表中的方块 我通过了一些测试,但当我实际尝试提交它时,它会引发某些错误,测试结果是错误的 import math def comp(array1, array2): **if array1 == []: return False if array2 == []: return False for i in range(len(array1)):
import math
def comp(array1, array2):
**if array1 == []:
return False
if array2 == []:
return False
for i in range(len(array1)):
promenljiva = array1[i * i]
if promenljiva in array2:
return True
break
for j in range(len(array2) - 1):
promenljiva_1 = math.sqrt(array2[j])
if promenljiva_1 not in array1:
return False
elif promenljiva_1 != array1[0]:
return False
break
这是我的代码,如果有人能在这方面帮助我,我将非常高兴!)
P.S.Promenljiva实际上只是变量的塞尔维亚术语:)
如果数组1中的所有项目**2都在数组2中,则返回True。否则,它将返回False。但是,如果array2中有其他值,它仍将返回True
def comp(array1, array2):
results = []
for i in array1:
if i*i in array2:
results.append(True)
else:
results.append(False)
if False in results: #if any squares are not in array2, return False
return False
else:
return True
any(array2中的x*x代表array1中的x)
嘿,欢迎来到Stackoverflow。我对python了解不多(我还在学习),但我认为如果您能对您的答案做一些解释会更好。如果没有必要,那么就忽略这个注释:)听着,我觉得这个问题很容易解决,我只是有点困惑,因为我才18岁,开始编码:(代码应该检查数组1的平方数是否在数组2中,因此,如果不是,它应该返回False。例如:If array=[2,4,6],并且array2=[4,16,36],它应该返回True。例如,如果array1=[2,4,6]和array2=[4,16,81],它应该返回False。不知道您是否得到了它:(Dimitrije,我修改了my代码以符合给定的测试用例。此外,只要array2中存在正方形,那么正方形的顺序在我的代码中是不相关的(例如:如果array1=[2,6,4]和array2=[4,16,36]仍将返回True)。