我正在为大学编写一个程序,它接受命令并修改列表。当我尝试将函数的返回值分配给我的列表时,它告诉我该变量未被使用,即使我也在函数中使用它。 函数调用:
data = filter_category(function["expense"], data)
功能:
def filter_category(expense, data):
for e in data:
if e[2] != expense:
data.remove(e)
return data
您的 IDE 仅评估此处的分配。是的,您正在使用“数据”将其赋予您的方法,但将该方法的返回值分配给数据,就像此方法调用后的所有内容的新变量一样。由于您不使用这个新分配的值,因此它认为该分配无用并告诉您,它没有被使用。
如果您在方法调用后对数据执行某些操作,则此警告将会消失。
不要在迭代列表时修改列表,因为它通常不安全。
def filter_category(expense, data):
filtered_data = []
for e in data:
if e[2] == expense:
filtered_data.append(e)
return filtered_data