擅长:python、mysql、java
<p><code>len()</code>和<code>str()</code>是以对象为参数并返回整数(resp。字符串)。对象可以通过<code>__len__()</code>和<code>__str__()</code>魔术方法个性化计算len或生成字符串的方式。在</p>
<p>类似地,<code>sorted()</code>是一个接受对象列表(或任何iterable)并返回排序对象列表的函数。对象可以通过<code>__lt__()</code>魔术方法对它们进行比较。在</p>
<p>当我们把“sorted(my_list)看作是一个“对列表排序”的函数,而不是“对列表的元素进行排序”时,就会产生一些混淆。在</p>
<p>你不想对你的对象进行排序(例如,建立一个有序的对象列表),而只需对<strong>一些内部表示的数据进行排序</strong>。因此,您需要在对象上使用一个实例方法来更新该内部表示。您可以随意命名它,<code>.sort()</code>如果您愿意的话,但是您必须在您的一个对象上调用它,并且它不会涉及到对象的比较。在</p>