循环中的小写不起作用

时间:2014-04-02 13:57:37

标签: python list for-loop lowercase

此代码有效(在我的程序方案中)

name_list = []

for pmodel in Ndf["Purchase_1_Model"]:  
    name = pmodel.split(' ')[0]     
    name_list.append(name)

Ndf['Series_name'] = name_list

我不明白为什么这不做任何额外的事情

name_list = []

for pmodel in Ndf["Purchase_1_Model"]:  
    name = pmodel.lower
    name = pmodel.split(' ')[0]     
    name_list.append(name)

Ndf['Series_name'] = name_list

有人可以给我任何指导吗?感谢

1 个答案:

答案 0 :(得分:1)

这是因为您没有使用lowerpmodel

您致电pmodel.lower并将其分配给变量name。然后,您在原始未修改 split上执行pmodel,并将其分配到name中现有值的顶部,替换之前的小写版本。

您可能想要执行以下操作:

for pmodel in Ndf["Purchase_1_Model"]:  
    lowered = pmodel.lower()
    name = lowered.split(' ')[0]     
    name_list.append(name)

或者简单地说:

for pmodel in Ndf["Purchase_1_Model"]:    
    name_list.append(pmodel.lower().split(' ')[0])