This issue tracker has been migrated to GitHub ,
and is currently read-only.
For more information,
see the GitHub FAQs in the Python's Developer Guide.
Created on 2010年11月08日 19:19 by terry.reedy, last changed 2022年04月11日 14:57 by admin. This issue is now closed.
| Files | ||||
|---|---|---|---|---|
| File name | Uploaded | Description | Edit | |
| issue10366_remove_unneeded_object_py3.2.diff | xuanji, 2010年11月13日 05:51 | |||
| Messages (8) | |||
|---|---|---|---|
| msg120795 - (view) | Author: Terry J. Reedy (terry.reedy) * (Python committer) | Date: 2010年11月08日 19:19 | |
In 3.x, "(object)" is now superfluous in class statements. Reference manual 7.7. Class definitions has simply class Foo: pass In library manual 2. Built-in Functions, class examples for classmethod and staticmethod are the same. Class examples for dir, property, and type still have '(object)' in their class examples. Section 5.11.4. Methods example omits it. I cannot think of anywhere else there should be such examples. I think we should be consistent and remove the remaining occurrences of '(object)' in the function examples. They can only confuse newcomers. This part is easy. I also think the doc for 'class' should say that the default inheritance is from the base class *object* (I presume this should be true in all implementations) and that class Foo(object): pass is the same as the above (unless the name 'object' has been rebound!). |
|||
| msg120798 - (view) | Author: Éric Araujo (eric.araujo) * (Python committer) | Date: 2010年11月08日 19:51 | |
Other unneeded uses of object, courtesy of grep: library/sqlite3.rst:713: class Point(object): library/multiprocessing.rst:1335: class MathsClass(object): library/functions.rst:281: >>> class Foo(object): library/functions.rst:897: class C(object): library/functions.rst:916: class Parrot(object): library/functions.rst:933: class C(object): library/functions.rst:1237: >>> class X(object): library/argparse.rst:1315: >>> class C(object): library/ctypes.rst:372: >>> class Bottles(object): library/itertools.rst:326: class groupby(object): howto/descriptor.rst:156: class RevealAccess(object): howto/descriptor.rst:173: >>> class MyClass(object): howto/descriptor.rst:205: class C(object): howto/descriptor.rst:214: class Property(object): howto/descriptor.rst:250: class Cell(object): howto/descriptor.rst:278: class Function(object): howto/descriptor.rst:286: >>> class D(object): howto/descriptor.rst:358: >>> class E(object): howto/descriptor.rst:371: class StaticMethod(object): howto/descriptor.rst:384: >>> class E(object): howto/descriptor.rst:419: class ClassMethod(object): howto/sorting.rst:228: class K(object): reference/datamodel.rst:1990: >>> class C(object): includes/sqlite3/adapter_point_2.py:3:class Point(object): includes/sqlite3/converter_point.py:3:class Point(object): includes/sqlite3/adapter_point_1.py:3:class Point(object): includes/mp_newtype.py:15:class Foo(object): |
|||
| msg121115 - (view) | Author: Xuanji Li (xuanji) * | Date: 2010年11月13日 05:51 | |
Attached a patch to implement the suggested changes on 3.2. If the patch is ok I can do the same for 3.1. |
|||
| msg122034 - (view) | Author: Éric Araujo (eric.araujo) * (Python committer) | Date: 2010年11月22日 00:11 | |
I will commit the patch this week unless someone opposes to it. We still need a doc change as described in Terry’s original message. |
|||
| msg122043 - (view) | Author: Xuanji Li (xuanji) * | Date: 2010年11月22日 00:26 | |
Hi eric, what doc change are you referring to? |
|||
| msg122045 - (view) | Author: Éric Araujo (eric.araujo) * (Python committer) | Date: 2010年11月22日 00:27 | |
"I also think the doc for 'class' should say that the default inheritance is from the base class *object*" |
|||
| msg122046 - (view) | Author: Raymond Hettinger (rhettinger) * (Python committer) | Date: 2010年11月22日 00:33 | |
These mostly look good. Do leave the howto documents as-is. They have some value across multiple versions of Python. Also, the descriptor how-to in particular gets some benefit from keeping (object) explicit because it helps remind users which version of __getattribute__ is being run. Other than the how-tos, please go ahead and apply. |
|||
| msg122081 - (view) | Author: Éric Araujo (eric.araujo) * (Python committer) | Date: 2010年11月22日 03:20 | |
The patch actually already contained a doc change addressing Terry’s second request, thank you Xuanji Li. I reverted the changes to howto as per Raymond’s comment, made some other slight editions (like removing trailing whitespace) and committed as r86670 and r86672. |
|||
| History | |||
|---|---|---|---|
| Date | User | Action | Args |
| 2022年04月11日 14:57:08 | admin | set | github: 54575 |
| 2010年11月22日 03:20:35 | eric.araujo | set | status: open -> closed resolution: accepted -> fixed messages: + msg122081 stage: patch review -> resolved |
| 2010年11月22日 00:33:09 | rhettinger | set | nosy:
+ rhettinger messages: + msg122046 |
| 2010年11月22日 00:27:03 | eric.araujo | set | messages: + msg122045 |
| 2010年11月22日 00:26:13 | xuanji | set | status: pending -> open messages: + msg122043 |
| 2010年11月22日 00:11:59 | eric.araujo | set | status: open -> pending messages: + msg122034 assignee: docs@python -> eric.araujo resolution: accepted stage: needs patch -> patch review |
| 2010年11月13日 05:51:14 | xuanji | set | files:
+ issue10366_remove_unneeded_object_py3.2.diff nosy: + xuanji messages: + msg121115 keywords: + patch |
| 2010年11月08日 19:52:51 | belopolsky | set | nosy:
+ belopolsky |
| 2010年11月08日 19:51:36 | eric.araujo | set | nosy:
+ eric.araujo messages: + msg120798 |
| 2010年11月08日 19:19:09 | terry.reedy | create | |