Klasy w pythonie, pomoc

0

Witam,
Na wstępie chciałbym się przywitać ze wszystkimi uzytkownikami forum i przeprosić jeśli ten temat już wystąpił... :D
Chciałbym was poprosić o podsunięcie jakiś dobrych pomysłów jak ogarnąć klasy itp. w pythonie ?
Uczę się pythona od paru miesięcy i niestety zatrzymałem się na tym temacie...
Z góry dziękuje !

4

A jaki konkretnie masz problem z tymi klasami?
Nie umiesz napisać klasy?
Nie rozumiesz po co są?
Nie rozróżniasz klasy od obiektu?
itd, itd

Najlepiej by było jakbyś wkleił jakiś konkretny kod z którym masz problem

2

To może Ci trochę pomoże. To samo tylko że w 1 przypadku na słownikach, a w 2 przy użyciu klasy

def create_enemy(name, health, defense):
    return { 'name': name, 'health': health, 'defense': defense }

def damage_enemy(enemy, attack):
    enemy['health'] -= max(0, attack - enemy['defense'])

def is_enemy_dead(enemy):
    return enemy['health'] <= 0

def enemy_status(enemy):
    return f'{enemy["name"]} is{"" if is_enemy_dead(enemy) else " not"} dead'

enemy = create_enemy("belzedup", 15, 3)
damage_enemy(enemy, 5)
print(enemy_status(enemy))
damage_enemy(enemy, 20)
print(enemy_status(enemy))

vs

class Enemy:
    def __init__(self, name, health, defense):
        self.name = name
        self.health = health
        self.defense = defense

    def take_damage(self, attack):
        self.health -= max(0, attack - self.defense)

    def is_dead(self):
        return self.health <= 0

    def status(self):
        return f'{self.name} is{"" if self.is_dead() else " not"} dead'

enemy = Enemy("belzedup", 15, 3)
enemy.take_damage(5)
print(enemy.status())
enemy.take_damage(20)
print(enemy.status())
0

Mianowicie problem leży u mnie w tym, że mam trudności ze zrozumieniem z jakich konkretnych terminów należy w danym momencie skorzystać, aby ułozyło się to wszystko w jedną spójną całość...

0

@spartanPAGE: Dzięki za przykłady, przeanalizuje sobie je.

0

Na necie jest tyle dobrych materiałów do nauki Pythona i klas, że głowa mała:)
https://runestone.academy/run[...]ublished/thinkcspy/index.html
https://docs.python.org/3/tutorial/index.html

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0