为了账号安全,请及时绑定邮箱和手机立即绑定

为什么前面的不行 后面的可以了 哪位大能 能解释下 为什么 # for x in L: 后就可以了呢

L=['adam','LISA','barT']

def MZgf(x):

    for x in L:

    return x[0].upper()+x[1:].lower()



print map(MZgf,L)







L=['adam','LISA','barT']

def MZgf(x):

#    for x in L:

    return x[0].upper()+x[1:].lower()



print map(MZgf,L)


正在回答

7 回答

你可以在

for x in L:

这句之前加上

print(s)

查看一下输出结果。

这里 map 函数的机制是从可迭代参数中依次取出相应的元素交给映射的函数处理。

0 回复 有任何疑惑可以回复我~

首先你差了一个缩进

0 回复 有任何疑惑可以回复我~

因为MZgf()里面传入的是List的一个元素,并不是一个LIst,故无需for in 遍历

0 回复 有任何疑惑可以回复我~

因为每次传入的是一个单词而不是一个List,所以不需要遍历

2 回复 有任何疑惑可以回复我~

直接return s.title()就好啦

0 回复 有任何疑惑可以回复我~

for x in L: L在那个函数语句块里是什么都不知道,所以不对,而且这句代码是多余的不需要执行遍历


0 回复 有任何疑惑可以回复我~

 for x in L

这句代码是多余的,所以你注释后才能执行

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
python进阶
  • 参与学习       255665    人
  • 解答问题       2949    个

学习函数式、模块和面向对象编程,掌握Python高级程序设计

进入课程

为什么前面的不行 后面的可以了 哪位大能 能解释下 为什么 # for x in L: 后就可以了呢

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信