如何将列表相互比较。我想比较两个列表的第一位和第四位数字。
我知道我能做到
if list[1] == list[1]:
但我认为有一种更有效的方法来完成它。非常感谢。我不想整体比较这些列表,只想将一个列表的x部分与另一个列表的x部分进行比较
import random
import replit
import numpy
import time
number = 0
answer = 0
guesses = 0
x = 0
useranswer = []
generated = []
for i in range (0,4):
num = random.randrange(1,9)
generated.append(num)
replit.clear()
print("---------------------------------------------------------------------\nWelcome to MASTERMIND! you must guess the number that was generated!\n---------------------------------------------------------------------\n")
def useranswer():
answer = str(input("Select a 4 digit number: "))
if len(answer) != 4:
print("Invalid answer type")
time.sleep(999999999)
answer = ' '
else:
useranswer = list((str(answer)))
if useranswer == generated:
print("Good job! You became the MASTERMIND in one turn!")
else:
while useranswer != generated:
useranswer()
guesses +=1
if useranswer == generated:
print("You have become the mastermind in " + guesses + " tries!")
else:
c = numpy.intersect1d(useranswer, generated, return_indices=True)[1]
print("You got " + c + " correct! ")```
您始终可以使用列表切片来比较列表之间项目的指定范围
如果它们匹配,则上述结果将产生一个真
如果您想返回两个列表之间的公共元素的索引,则有一个名为Numpy的库,它具有强大的功能,可以有效地执行此类任务
这将返回以下索引:
但你的问题的答案是:
相关问题 更多 >
编程相关推荐