python str.replace 不能接收参数

2 投票
1 回答
1339 浏览
提问于 2025-04-16 23:02

我正在用一个叫做key的函数来给一个列表排序,这个列表里是用LaTeX写的歌曲标题。

songs = sorted(songs, key=str.replace('$\lambda$','lambda'))

问题是,当这个函数运行的时候,它提示:“类型错误:replace()至少需要两个参数(但我只给了一个)”。

1 个回答

6

你的关键参数应该是一个可以调用的东西。现在你发送的是一个字符串,这就是出错的原因。

你可以试试这个:

songs = sorted(songs, key=lambda s: s.replace('$\lambda$','lambda'))

如果你想在原地排序的话

songs.sort(key=lambda s: s.replace('$\lambda$','lambda'))

撰写回答