Thread [Python] Aufruf einer Klasse mit Variable (4 answers)
Opened by YAPD at 2021-07-20 12:19

hlubenow
 2021-07-28 21:57
#193460 #193460
User since
2009-02-22
875 Artikel
BenutzerIn
[default_avatar]
In Python werden Objekte einer Klasse, z.B. einer Klasse "Config", stets mit deren Funktion "__init__" initialisiert. Deren erster Parameter notwendig dieses "self" ist.
Das heißt, wenn Du ein Objekt der Klasse "Config" initialisiert, wird automatisch deren Methode "__init__" aufgerufen. Eine Methode "Initialize" wird nicht verwendet (und wäre überflüssig). Und soweit ich weiß, sind Klassenname wie hier "Config" auch festgelegt und können nicht Variablen zugewiesen werden.
Code (python): (dl )
1
2
3
4
5
6
7
8
9
10
#!/usr/bin/python
# coding: utf-8

class Config:

    def __init__(self, test):
        self.test = test
        print self.test

c = Config("test")

Natürlich kann hier "c" ein Objekt der Klasse "Config" sein, oder einer beliebigen anderen Klasse, im Sinne von "c = Wasweissich()".
Und natürlich kann man sowas machen:
Code (python): (dl )
1
2
3
4
if var1 == 1:
    c = Config()
else:
    c = Wasweissich()

Das Beispiel oben entspricht diesem Perl-Code:
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#!/usr/bin/perl

use warnings;
use strict;

package Config {

    sub new {
        my $classname = shift;
        my $self = {test => shift};
        print $self->{test} . "\n";
        return bless($self, $classname);
    }
}

my $c = Config->new(test => "test");

Näheres zu Perl-OOP auf meiner Seite.
Last edited: 2021-07-28 22:08:13 +0200 (CEST)

View full thread [Python] Aufruf einer Klasse mit Variable