python str.replace不获取参数
我正在使用key=函数对列表进行排序,我正在对用LaTeX编写的歌曲标题列表进行排序python str.replace不获取参数,python,sorting,arguments,Python,Sorting,Arguments,我正在使用key=函数对列表进行排序,我正在对用LaTeX编写的歌曲标题列表进行排序 songs = sorted(songs, key=str.replace('$\lambda$','lambda')) 问题是,当函数运行时,它会说:“TypeError:replace()至少接受两个参数(得到一个)您的关键参数应该是可调用的。您现在正在发送字符串,这就是错误 你可以试试这个: songs = sorted(songs, key=lambda s: s.replace('$\lambda$
songs = sorted(songs, key=str.replace('$\lambda$','lambda'))
问题是,当函数运行时,它会说:“TypeError:replace()至少接受两个参数(得到一个)您的关键参数应该是可调用的。您现在正在发送字符串,这就是错误 你可以试试这个:
songs = sorted(songs, key=lambda s: s.replace('$\lambda$','lambda'))
用于就地分拣
songs.sort(key=lambda s: s.replace('$\lambda$','lambda'))
或者使用
functools
中的partial
,速度更快,但需要导入。