Aktywne Wpisy

solejukowski +536
Pokolenie trzydziestolatków nie jest słabe. Ono zostało wychowane w obietnicy, której świat nie dotrzymał.
Dzisiejsi trzydziesto- i trzydziestoparolatkowie są jednym z najbardziej psychologicznie przeciążonych pokoleń ostatnich dekad. Nie dlatego, że „nie chce im się pracować”. Nie dlatego, że są roszczeniowi. I nie dlatego, że „kiedyś ludzie mieli gorzej”.
Ich dramat polega na czymś innym: dorastali w epoce wielkiej obietnicy możliwości.
Słyszeli:
Dzisiejsi trzydziesto- i trzydziestoparolatkowie są jednym z najbardziej psychologicznie przeciążonych pokoleń ostatnich dekad. Nie dlatego, że „nie chce im się pracować”. Nie dlatego, że są roszczeniowi. I nie dlatego, że „kiedyś ludzie mieli gorzej”.
Ich dramat polega na czymś innym: dorastali w epoce wielkiej obietnicy możliwości.
Słyszeli:

HardWax +302




class Prostokat:....def __init__(self, bok1, bok2):
........self.bok1 = bok1
........self.bok2 = bok2
....def pole(self):........print(self.bok1 * self.bok2)
p1 = Prostokat(3, 5)def obiekt_atrybut():....wybor = input('Co do wyprintowania? ')
....pass
-----------------------------------------------------------------------------------------------------------------
Czy można sobie za pomocą funkcji obiektatrybuty() wydrukować atrybuty jakiegoś obiektu, albo jego metody? Np. podajemy w inpucie 'p1.bok2, albo p1.pole() i to się wykonuje. Problemem jest oczywiście string, który wychodzi z inputa.
Przypuszczam, że nikt tak nie robi (i nie powinno się tak robić), ale ciekawi mnie, czy jest to w ogóle wykonalne.
#python #naukaprogramowania
def obiekt_atrybut2(self):wybor = input('Co do wyprintowania? ')
print(getattr(self, wybor))
obiekt_atrybut2(p1)Ok, tak jak wyżej zadziała. Ale jeżeli w inpucie podalibyśmy jako całość np. 'p1.bok2', albo 'p1.pole()', to wtedy jak to można wywołać jak to będzie string?
Da się to zrobić poprzez
instance, attr = wybór.split(".")
result = gettatr(globals[instance], attr)
if