我的问题是:如果我的列表中的任何值小于一个常量变量,我想取那个较低值的索引,并从对应于那个索引的bList中删除某个东西。简而言之,我想把aList中的所有值与一个常量进行比较,如果aList中的值低于常量。我将得到这些的索引,并使用该索引生成bList[index]= 0.
示例:
让我们说
constantToCompare=8
aList=[13, 12, 11, 9, 7]
bList=[100, 200, 300, 400, 500]
所以aList
的第五个元素小于constantToCompare
我想让bList
=[100, 200, 300, 400, 0]
顺便说一下,这个constantToCompare
将增加+1到某个值,这样就需要一个循环来完成这个过程。你知道吗
谢谢你。 我希望我明白了。你知道吗
请通过下面的代码。这是经过测试的代码,希望这能解决你的问题。你知道吗
既然你是初学者,我就试着把步骤分解清楚。您希望遍历} :
aList
。因为您关心每个元素的索引以及元素本身,所以需要使用^{在这个循环中,您可以使用
idx
获取当前索引的值,使用val
获取当前正在查看的元素的值。然后要检查val
是否小于常量:如果是,则将
bList
中对应的元素设置为零:要获得更简洁的外观,可以改用list comprehension(一种快速创建列表的方法):
我不知道你说的
constantToCompare
增加是什么意思。如果要多次执行此操作,可以将其全部打包到另一个循环中:如果希望在浏览列表时增加,可以在循环中添加另一行:
为了简洁起见,我使用了列表理解,但在实际代码中,为了可读性,我可能更喜欢较长的版本。你知道吗
希望这有帮助!你知道吗
您可以使用列表理解来完成此任务。你知道吗
zip
将属于一起的数据放在一起,然后决定是保留原始值还是将其设置为0
。你知道吗在问题中,您说过用于比较的值将在处理过程中改变
+1
。如果constant_to_compare
在处理一个循环的过程中发生变化,则不能使用这种方法。我不确定是这样还是你想把整个过程重复多次。不管它是什么,变量名的“常量”部分是误导性的,应该更改。你知道吗相关问题 更多 >
编程相关推荐