Re: Python (was Re: I did not inhale)

Liste des GroupesRevenir à cu shell 
Sujet : Re: Python (was Re: I did not inhale)
De : ldo (at) *nospam* nz.invalid (Lawrence D'Oliveiro)
Groupes : comp.unix.shell comp.unix.programmer comp.lang.misc
Date : 26. Aug 2024, 22:35:25
Autres entêtes
Organisation : A noiseless patient Spider
Message-ID : <vaises$2k7o6$2@dont-email.me>
References : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
User-Agent : Pan/0.160 (Toresk; )
On Mon, 26 Aug 2024 08:33:30 -0700, John Ames wrote:

... the simple fact that Guido & co. made a boneheaded choice like that
is the reason I'll never be able to *respect* it, even when I do find
myself using it.

I restore the redundancy by using “#end” comments. E.g. a seriously
nontrivial case:

    def def_struct_class(name, ctname, extra = None) :
        # defines a class with attributes that are a straightforward mapping
        # of a ctypes struct. Optionally includes extra members from extra
        # if specified.

        ctstruct = getattr(CAIRO, ctname)

        class result_class :

            __slots__ = tuple(field[0] for field in ctstruct._fields_) # to forestall typos

            def to_cairo(self) :
                "returns a Cairo representation of the structure."
                result = ctstruct()
                for name, cttype in ctstruct._fields_ :
                    setattr(result, name, getattr(self, name))
                #end for
                return \
                    result
            #end to_cairo

            @classmethod
            def from_cairo(celf, r) :
                "decodes the Cairo representation of the structure."
                result = celf()
                for name, cttype in ctstruct._fields_ :
                    setattr(result, name, getattr(r, name))
                #end for
                return \
                    result
            #end from_cairo

            def __getitem__(self, i) :
                "allows the object to be coerced to a tuple."
                return \
                    getattr(self, ctstruct._fields_[i][0])
            #end __getitem__

            def __repr__(self) :
                return \
                    (
                        "%s(%s)"
                    %
                        (
                            name,
                            ", ".join
                              (
                                "%s = %s" % (field[0], getattr(self, field[0]))
                                for field in ctstruct._fields_
                              ),
                        )
                    )
            #end __repr__

        #end result_class

    #begin def_struct_class
        result_class.__name__ = name
        result_class.__doc__ = \
            (
                "representation of a Cairo %s structure. Fields are %s."
                "\nCreate by decoding the Cairo form with the from_cairo method;"
                " convert an instance to Cairo form with the to_cairo method."
            %
                (
                    ctname,
                    ", ".join(f[0] for f in ctstruct._fields_),
                )
            )
        if extra != None :
            for attr in dir(extra) :
                if not attr.startswith("__") :
                    setattr(result_class, attr, getattr(extra, attr))
                #end if
            #end for
        #end if
        return \
            result_class
    #end def_struct_class

Date Sujet#  Auteur
15 Aug 24 * Re: I did not inhale241Kalevi Kolttonen
16 Aug 24 `* Re: Python (was Re: I did not inhale)240Lawrence D'Oliveiro
16 Aug 24  +* Re: Python (was Re: I did not inhale)236Kaz Kylheku
16 Aug 24  i`* Re: Python (was Re: I did not inhale)235Kalevi Kolttonen
16 Aug 24  i +* Re: Python (was Re: I did not inhale)2John Ames
17 Aug 24  i i`- Re: Python (was Re: I did not inhale)1D
17 Aug 24  i +* Re: Python (was Re: I did not inhale)62Muttley
17 Aug 24  i i+* Re: Python (was Re: I did not inhale)59Dmitry A. Kazakov
17 Aug 24  i ii+* Re: Python (was Re: I did not inhale)57Lawrence D'Oliveiro
18 Aug 24  i iii`* Re: Python (was Re: I did not inhale)56Dmitry A. Kazakov
18 Aug 24  i iii +* Re: Python (was Re: I did not inhale)14Muttley
18 Aug 24  i iii i`* Re: Python (was Re: I did not inhale)13Dmitry A. Kazakov
18 Aug 24  i iii i `* Re: Python (was Re: I did not inhale)12Muttley
18 Aug 24  i iii i  +* Re: Python (was Re: I did not inhale)10Dmitry A. Kazakov
18 Aug 24  i iii i  i+* Re: Python (was Re: I did not inhale)2Kaz Kylheku
18 Aug 24  i iii i  ii`- Re: Python (was Re: I did not inhale)1Dmitry A. Kazakov
19 Aug 24  i iii i  i+- Re: Python (was Re: I did not inhale)1Lawrence D'Oliveiro
19 Aug 24  i iii i  i+- Re: Python (was Re: I did not inhale)1Muttley
25 Aug 24  i iii i  i`* Re: Python (was Re: I did not inhale)5Sebastian
25 Aug 24  i iii i  i `* Re: Python (was Re: I did not inhale)4Dmitry A. Kazakov
25 Aug 24  i iii i  i  +* Re: Python (was Re: I did not inhale)2vallor
25 Aug 24  i iii i  i  i`- Re: Python (was Re: I did not inhale)1Lawrence D'Oliveiro
25 Aug 24  i iii i  i  `- Re: Python (was Re: I did not inhale)1Lawrence D'Oliveiro
18 Aug 24  i iii i  `- Re: Python (was Re: I did not inhale)1Richard Kettlewell
18 Aug 24  i iii +* Re: Python (was Re: I did not inhale)2Kenny McCormack
18 Aug 24  i iii i`- Re: Python (was Re: I did not inhale)1Muttley
18 Aug 24  i iii +* Re: Python (was Re: I did not inhale)5Kaz Kylheku
18 Aug 24  i iii i`* Re: Python (was Re: I did not inhale)4Dmitry A. Kazakov
19 Aug 24  i iii i `* Re: Python (was Re: I did not inhale)3Kaz Kylheku
19 Aug 24  i iii i  `* Re: Python (was Re: I did not inhale)2Dmitry A. Kazakov
19 Aug 24  i iii i   `- Re: Python (was Re: I did not inhale)1Kaz Kylheku
19 Aug 24  i iii `* Re: Python (was Re: I did not inhale)34Lawrence D'Oliveiro
19 Aug 24  i iii  `* Re: Python (was Re: I did not inhale)33Dmitry A. Kazakov
19 Aug 24  i iii   +* Re: Python (was Re: I did not inhale)22David Brown
19 Aug 24  i iii   i`* Re: Python (was Re: I did not inhale)21Dmitry A. Kazakov
19 Aug 24  i iii   i +* Re: Python (was Re: I did not inhale)4Muttley
19 Aug 24  i iii   i i`* Re: Python (was Re: I did not inhale)3Dmitry A. Kazakov
19 Aug 24  i iii   i i +- Re: Python (was Re: I did not inhale)1Muttley
30 Sep 24  i iii   i i `- Re: Python (was Re: I did not inhale)1Bozo User
19 Aug 24  i iii   i +* Re: Python (was Re: I did not inhale)12David Brown
20 Aug 24  i iii   i i`* Re: Python (was Re: I did not inhale)11Dmitry A. Kazakov
20 Aug 24  i iii   i i +* Re: Python (was Re: I did not inhale)3Lawrence D'Oliveiro
20 Aug 24  i iii   i i i`* Re: Python (was Re: I did not inhale)2Dmitry A. Kazakov
21 Aug 24  i iii   i i i `- Re: Python (was Re: I did not inhale)1Lawrence D'Oliveiro
20 Aug 24  i iii   i i `* Re: Python (was Re: I did not inhale)7David Brown
20 Aug 24  i iii   i i  `* Re: Python (was Re: I did not inhale)6Dmitry A. Kazakov
20 Aug 24  i iii   i i   +* Re: Python (was Re: I did not inhale)2David Brown
20 Aug 24  i iii   i i   i`- Re: Python (was Re: I did not inhale)1Dmitry A. Kazakov
21 Aug 24  i iii   i i   `* Re: Python (was Re: I did not inhale)3Lawrence D'Oliveiro
21 Aug 24  i iii   i i    `* Re: Python (was Re: I did not inhale)2Dmitry A. Kazakov
22 Aug 24  i iii   i i     `- Re: Python (was Re: I did not inhale)1Lawrence D'Oliveiro
19 Aug 24  i iii   i `* Re: Python (was Re: I did not inhale)4Keith Thompson
19 Aug 24  i iii   i  `* Re: Python (was Re: I did not inhale)3John Ames
20 Aug 24  i iii   i   +- Re: Python (was Re: I did not inhale)1Muttley
20 Aug 24  i iii   i   `- Re: Python (was Re: I did not inhale)1Stefan Ram
19 Aug 24  i iii   +* Re: Python (was Re: I did not inhale)8Lawrence D'Oliveiro
19 Aug 24  i iii   i`* Re: Python (was Re: I did not inhale)7Dmitry A. Kazakov
19 Aug 24  i iii   i +* Re: Python (was Re: I did not inhale)2Keith Thompson
19 Aug 24  i iii   i i`- Re: Python (was Re: I did not inhale)1Dmitry A. Kazakov
20 Aug 24  i iii   i `* Re: Python (was Re: I did not inhale)4Lawrence D'Oliveiro
20 Aug 24  i iii   i  `* Re: Python (was Re: I did not inhale)3Dmitry A. Kazakov
20 Aug 24  i iii   i   +- Re: Python (was Re: I did not inhale)1Lawrence D'Oliveiro
20 Aug 24  i iii   i   `- Re: Python (was Re: I did not inhale)1D
21 Aug 24  i iii   `* Re: Python (was Re: I did not inhale)2vallor
21 Aug 24  i iii    `- Re: Python (was Re: I did not inhale)1Lawrence D'Oliveiro
18 Aug 24  i ii`- Re: Python (was Re: I did not inhale)1Muttley
18 Aug 24  i i`* Re: Python (was Re: I did not inhale)2David Brown
18 Aug 24  i i `- Re: Python (was Re: I did not inhale)1Muttley
18 Aug 24  i `* Re: Python (was Re: I did not inhale)170David Brown
18 Aug 24  i  +* Re: Python (was Re: I did not inhale)2Keith Thompson
19 Aug 24  i  i`- Re: Python (was Re: I did not inhale)1David Brown
20 Aug 24  i  `* Re: Python (was Re: I did not inhale)167Kalevi Kolttonen
20 Aug 24  i   +* Re: Python (was Re: I did not inhale)3Muttley
20 Aug 24  i   i+- Re: Python (was Re: I did not inhale)1Lew Pitcher
20 Aug 24  i   i`- Re: Python (was Re: I did not inhale)1Kalevi Kolttonen
20 Aug 24  i   +* Re: Python (was Re: I did not inhale)160David Brown
20 Aug 24  i   i`* Re: Python (was Re: I did not inhale)159Kalevi Kolttonen
21 Aug 24  i   i +* Re: Python (was Re: I did not inhale)151David Brown
21 Aug 24  i   i i+* Re: Python (was Re: I did not inhale)132Muttley
21 Aug 24  i   i ii`* Re: Python (was Re: I did not inhale)131David Brown
21 Aug 24  i   i ii `* Re: Python (was Re: I did not inhale)130Muttley
21 Aug 24  i   i ii  `* Re: Python (was Re: I did not inhale)129David Brown
21 Aug 24  i   i ii   `* Re: Python (was Re: I did not inhale)128Muttley
21 Aug 24  i   i ii    `* Re: Python (was Re: I did not inhale)127David Brown
22 Aug 24  i   i ii     `* Re: Python (was Re: I did not inhale)126Muttley
22 Aug 24  i   i ii      +* Re: Python (was Re: I did not inhale)6D
22 Aug 24  i   i ii      i+* Re: Python (was Re: I did not inhale)4Muttley
22 Aug 24  i   i ii      ii`* Re: Python (was Re: I did not inhale)3D
22 Aug 24  i   i ii      ii `* Re: Python (was Re: I did not inhale)2Lew Pitcher
22 Aug 24  i   i ii      ii  `- Re: Python (was Re: I did not inhale)1Muttley
22 Aug 24  i   i ii      i`- Re: Python (was Re: I did not inhale)1David Brown
22 Aug 24  i   i ii      `* Re: Python (was Re: I did not inhale)119David Brown
22 Aug 24  i   i ii       +* Re: Python (was Re: I did not inhale)110Muttley
26 Aug 24  i   i ii       i`* Re: Python (was Re: I did not inhale)109John Ames
26 Aug 24  i   i ii       i +- Re: Python (was Re: I did not inhale)1Muttley
26 Aug 24  i   i ii       i `* Re: Python (was Re: I did not inhale)107Lawrence D'Oliveiro
26 Aug 24  i   i ii       i  +* Re: Python (was Re: I did not inhale)103John Ames
27 Aug 24  i   i ii       i  i+- Re: Python (was Re: I did not inhale)1Lawrence D'Oliveiro
27 Aug 24  i   i ii       i  i+- Re: Python (was Re: I did not inhale)1Sebastian
27 Aug 24  i   i ii       i  i`* Re: Python (was Re: I did not inhale)100Richard Kettlewell
27 Aug 24  i   i ii       i  i +* Re: Python (was Re: I did not inhale)94Bart
28 Aug 24  i   i ii       i  i `* Re: Python (was Re: I did not inhale)5Sebastian
26 Aug 24  i   i ii       i  +* Re: Python (was Re: I did not inhale)2Bart
27 Aug 24  i   i ii       i  `- Re: Python (was Re: I did not inhale)1Kaz Kylheku
22 Aug 24  i   i ii       `* Re: Python (was Re: I did not inhale)8Lawrence D'Oliveiro
21 Aug 24  i   i i`* Re: Python (was Re: I did not inhale)18Lawrence D'Oliveiro
21 Aug 24  i   i `* Re: Python (was Re: I did not inhale)7Muttley
21 Aug 24  i   `* Re: Python (was Re: I did not inhale)3Lawrence D'Oliveiro
16 Aug 24  `* Re: Python (was Re: I did not inhale)3Kalevi Kolttonen

Haut de la page

Les messages affichés proviennent d'usenet.

NewsPortal