Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > de.comp.lang.python > #5641

Re: [Python-de] "property-init"-decorator

Path csiph.com!fu-berlin.de!uni-berlin.de!not-for-mail
From Peter Otten <__peter__@web.de>
Newsgroups de.comp.lang.python
Subject Re: [Python-de] "property-init"-decorator
Date Sun, 31 May 2020 15:37:12 +0200
Organization None
Lines 46
Message-ID <mailman.45.1590932265.24731.python-de@python.org> (permalink)
References <875zci8zut.fsf@orrococo> <4719790.vIyLdRSyTD@palindrom> <9d687032-db10-2482-9455-540de7c9a3a4@goebel-consult.de> <2456739.UVeabOu3e6@palindrom>
Mime-Version 1.0
Content-Type text/plain; charset="utf-8"
Content-Transfer-Encoding quoted-printable
X-Trace news.uni-berlin.de LBWO/vHrYhjMQlgxguQCcQcUGidczjI73rh5lizB+9mw==
Return-Path <__peter__@web.de>
X-Original-To python-de@python.org
Delivered-To python-de@mail.python.org
Authentication-Results mail.python.org; dkim=pass reason="1024-bit key; unprotected key" header.d=web.de header.i=@web.de header.b=iDcRiKop; dkim-adsp=pass; dkim-atps=neutral
DKIM-Signature v=1; a=rsa-sha256; c=relaxed/simple; d=web.de; s=dbaedf251592; t=1590932263; bh=wEEXUr3xs8WxjOW0UeGFAgi4C382ctcf4/m/M906Xps=; h=X-UI-Sender-Class:From:To:Subject:Date:In-Reply-To:References; b=iDcRiKopsyqkOXKRqDdVvNWUKUy+VDm0yClW3eWEGHQwCYoZg7SEp013zoxRqyXxb 9+u/KdOkIvdb6LgLTqjwXlrhGcKK4OZ9iYo79Nc9VoRsyfj3+JStqbR9BO8Ktw3slR avA3YJlIjUvagKZADGDnMIEzMa1+nhoAnQNRjzSM=
X-UI-Sender-Class c548c8c5-30a9-4db5-a2e7-cb6cb037b8f9
User-Agent KMail/4.13.3 (Linux/3.13.0-170-generic; KDE/4.13.3; x86_64; ; )
In-Reply-To <9d687032-db10-2482-9455-540de7c9a3a4@goebel-consult.de>
X-Provags-ID V03:K1:6HV9uWWBWuPf45Hn8Hn86keJw1rqS1EN30GITUQbzWKJPWlT1cJ R/AVxj1i8cy6+QNpRDqqnZ+Z0eQI4JkCvgxnd/xUksz2DbvfFsNM35dJlNGcL/hU8jrgI+i jT/mQ4d+8Jl++GME0mVtwH1+i+efirYe0csO77qZb6u0H5lf48pNtEgKIcnvI9PjhB78+yG 6wTa7KBmvnHUtZx7akgTQ==
X-Spam-Flag NO
X-UI-Out-Filterresults notjunk:1;V03:K0:Gljqzes3/U0=:LpBO4++UU2/PUXXswpnvht /Ee4/U7BY4IMjYCpRp0Eyyfb85vo0KnIO0LRQWgYXGV4bopOGn7qRGC/G8EBrH4LV99rgiW70 6OCBNp4ALCGTIAsXu+y2m5nsJ9gZwhwDMWZSA9z2k1dLK8TwyENG1gF3LsW/HgI8/ynaDO0ge d90M+3sgdQpl46c81AowoQzj0J7dG2pgGNYjjw9zOmLyH4AFR8I+57kitx3D31ahfHrtMMJox wO+S1jYHFr5MFet07tfL4EGadbcTYVo8lcOObN68RMiWhG2y4aa7NRa9GmAkd65vMGwz9uGUh r0229vluxe2XbU91Xzivt2barnO7BikEM/HqS15fAa8DGLHGjBaTK4jtPRXnM2j3U+ieVKANj +uUFVgCT0q/qVEQioDnTld0mdniGJpoUIBRgiHEbkf02BXq0B5qjE2WZW0MkhoC9wpBYpeq1z VUqTRJU2yeyknlBJpklMXattCrmEd47cUdxze4pAAEoRBfN3Y9WRzpirBlWmoSeSuA1IyDGDE 4wPziY5qBQXBRD4x7isV1X6NhiNXwjjzFC8xht8WrBa2VJlLuVoGAI/GOdVaSOTJ1jRTGjGBb SCaYC4OJ56aX7pE+He44sWgIb1Z8HBbFZSyxnWdO5lbTeqXVmyqTrsVG6lPzBEfvZR5cSnDs8 saUADbK2lhIf7DygUUgLOBQbmPwoUZZI0tbrsdXQzxymS3rGRDdyj51gtdyR2mW7cKElP0dFp lim4pH2d5OG+kL5AQLuUhAl8uZ1asiT0Z0rL71czGgad/T3AWgRTV1xx6fqkm3dRpP398U5SO TFT6bCeeiH0V3bqatMrnTAzRyoaaMWZvUes8ctMQYig0g2dl3PaMSwhQFcYyDYIUpDkfJsqUL GNtqApS08pHKbCs8YH1h7GxqRm4KduE+MPrMlLAjJOFBymB2ww63wuXqb6issPRPka8zrUrAv C8fQ88EiBIVqwyJGSEeUa2fQsfkJa7pXKvksV/MUHGT9Zhg6wU1Nb7Q5TMnmCy5pGv1nuqkP9 vB0Pvc9kWA93GdNrz74Wg4YhXdXvyB2tqFW44Gv8peioiaD3muFWqNaWorRH1YbisXNgcBjKJ n2655xXT+vcvoIzxLNKaucGT3OU8djjeJj8Hl0FXtrfjFH6MH/sVLFfoZSqZSRduafidrPRjp PyhUi5/QT0DLMGE0OmRngFWbJjByFX89GYrABpFvJrlXE1bnGAiENXa5QvIqlmRqzgX14g/HK jgQCQdez3J0RZRlTR
X-BeenThere python-de@python.org
X-Mailman-Version 2.1.33
Precedence list
List-Id Die Deutsche Python Mailingliste <python-de.python.org>
List-Unsubscribe <https://mail.python.org/mailman/options/python-de>, <mailto:python-de-request@python.org?subject=unsubscribe>
List-Archive <http://mail.python.org/pipermail/python-de/>
List-Post <mailto:python-de@python.org>
List-Help <mailto:python-de-request@python.org?subject=help>
List-Subscribe <https://mail.python.org/mailman/listinfo/python-de>, <mailto:python-de-request@python.org?subject=subscribe>
X-Mailman-Original-Message-ID <2456739.UVeabOu3e6@palindrom>
X-Mailman-Original-References <875zci8zut.fsf@orrococo> <4719790.vIyLdRSyTD@palindrom> <9d687032-db10-2482-9455-540de7c9a3a4@goebel-consult.de>
Xref csiph.com de.comp.lang.python:5641

Show key headers only | View raw


Am So Mai 31 2020, 10:13:43 schrieb Hartmut Goebel:
> Am 27.05.20 um 17:13 schrieb Peter Otten:
> > Die Reihenfolge kann durch die Positionierung in der Klasse bestimmt werden:
> Könnte man machen, allerdings würde ich mich nicht darauf verlassen,
> dass die Reihenfolge in `vars(A).keys()` immer stimmt. Kannst Du mit
> eine Doku dazu zeigen, ich habe nichts gefunden.

Was Knackiges kann ich auch nicht vorweisen, nur

https://docs.python.org/3/whatsnew/3.6.html#pep-520-preserving-class-attribute-definition-order

mit dem Verweis auf die

PEP 520 – Preserving Class Attribute Definition Order
https://www.python.org/dev/peps/pep-0520

bei deren Enstehung wohl noch nicht bekannt war, dass `dict`s die
insertion order erhalten.

> Allerdings hat mich Deine Mail noch auf einen ganz anderen Ansatz gebracht:
> 
> class A:
>     _myprop = 1.23
> 
>     @property
>     def myprop(self):
>         return self._myprop
> 
>     @myprop.setter
>     def myprop(self, value):
>         if value < 2.5:
>             self._myprop = value
> 
> a = A()
> print(a.myprop)
> a.myprop = 2.1
> print(a.myprop)

Das hat den Vorteil, dass man sich nur auf Standard-Konstrukte verlässt.
Für mutable defaults muss man das allerdings modifizieren.

Back to de.comp.lang.python | Previous | NextPrevious in thread | Find similar


Thread

"property-init"-decorator ole-usenet-spam@gmx.net (Оlе Ѕtrеісhеr) - 2020-05-26 17:44 +0200
  Re: [Python-de] "property-init"-decorator Julian Gethmann <mail.python.org@gethmann.org> - 2020-05-26 18:07 +0200
  Re: [Python-de] "property-init"-decorator Hartmut Goebel <h.goebel@goebel-consult.de> - 2020-05-27 10:27 +0200
  Re: "property-init"-decorator "Andreas B." <ab@sysing.de> - 2020-05-27 13:18 +0200
  Re: [Python-de] "property-init"-decorator Gregor Engberding <gregor@landit.de> - 2020-05-27 17:04 +0200
  Re: [Python-de] "property-init"-decorator Peter Otten <__peter__@web.de> - 2020-05-27 17:13 +0200
  Re: [Python-de] "property-init"-decorator Hartmut Goebel <h.goebel@goebel-consult.de> - 2020-05-31 10:13 +0200
  Re: [Python-de] "property-init"-decorator Peter Otten <__peter__@web.de> - 2020-05-31 15:37 +0200

csiph-web