Python 为什么我的for循环要重写I';我骑车经过?

Python 为什么我的for循环要重写I';我骑车经过?,python,for-loop,Python,For Loop,我有一个熊猫数据框的列名“sample_names”列表。我使用for循环将函数“lambdas”传递给数据帧中的每一列,这很正常。但是for循环也在重写列名“sample_names”的列表,以便该列表只包含最后一个示例名,而不是所有示例名。不知道为什么会这样 样本名称列表的格式如下:[“GMBP02Z1-1”、“GMBP02Z1-2”、“GMBP02Z2-1”、“GMBP02Z2-2”、…] 输出lambda_值的形式如下:[数组([3.74993618,-44.14515681,-35.7

我有一个熊猫数据框的列名“sample_names”列表。我使用for循环将函数“lambdas”传递给数据帧中的每一列,这很正常。但是for循环也在重写列名“sample_names”的列表,以便该列表只包含最后一个示例名,而不是所有示例名。不知道为什么会这样

样本名称列表的格式如下:[“GMBP02Z1-1”、“GMBP02Z1-2”、“GMBP02Z2-1”、“GMBP02Z2-2”、…]

输出lambda_值的形式如下:[数组([3.74993618,-44.14515681,-35.77677525299.47783486]),数组([3.71842561,-43.99570425,-38.938825153.75523515]),数组([3.31301049,…]

for i in sample_names:
    sample_names = i
    params = OP_constants(subset_radii, degree=4)
    lambda_values.append(lambdas(np.log(subset_y2[sample_names]), subset_radii, params = params, degree = 4))
print(lambda_values)

列表对象“sample_names”存在于循环外部。循环中的第一行始终是:

样本名称=i

因此,在每个循环开始时,您已将sample\u names对象修改为“sample\u names”列表中最新的字符串。在最后一个循环之后,它是sample\u names中的最后一项

可能会将循环中的第一行(以及循环中对sample_名称的所有后续引用)更改为:

样本名称=i


能实现你的目标吗?

不可能用你发布的内容来表达。
sample\u names=i
-这是你的问题。如果不是这样,你需要提供一个。啊,好的,我现在更好地理解了,你的更改解决了问题,谢谢你的帮助!