python str.replace没有得到参数

Mar*_*nnj 2 python sorting arguments

我正在使用key =函数对列表进行排序,我正在对使用LaTeX编写的歌曲标题列表进行排序.

songs = sorted(songs, key=str.replace('$\lambda$','lambda'))
Run Code Online (Sandbox Code Playgroud)

问题是当函数运行时它说:"TypeError:replace()至少需要2个参数(得到一个)

utd*_*mir 6

您的关键参数应该是可调用的.你现在正在发送一个字符串,这是错误.

你可以试试这个:

songs = sorted(songs, key=lambda s: s.replace('$\lambda$','lambda'))
Run Code Online (Sandbox Code Playgroud)

并进行就地分拣

songs.sort(key=lambda s: s.replace('$\lambda$','lambda'))
Run Code Online (Sandbox Code Playgroud)