Discuss / Python / 大佬指教

大佬指教

Topic source

0Nelson

#1 Created at ... [Delete] [Delete and Lock User]

def normalize(name): L=[] for i in name: i=i.lower() I=i[0].upper()+i[1:] L.append(I) return L 直接输入: normalize(['adam', 'LISA', 'barT']) 结果:['Adam', 'Lisa', 'Bart'] 用list(map(normalize,['adam', 'LISA','barT'])) 结果:[['A', 'D', 'A', 'M'], ['L', 'I', 'S','A'], ['B', 'A', 'R', 'T']] 为什么?!!!!!!

调用map()的时候,是'adam', 'LISA', 'barT'分别传进去,即: map(normalize,['adam', 'LISA','barT']) 相当于: normalize('adam') normalize('LISA') normalize('barT') 所以循环时,name是字符串,而不是list

0Nelson

#3 Created at ... [Delete] [Delete and Lock User]

谢谢


  • 1

Reply