Maven_super_31_100_Python_51_65 - itnett/FTD02N GitHub Wiki

Her er en videreføring av listen med de neste 15 Python-konseptene, fra og med nummer 51. Hvert konsept har en forklaring, et kodeeksempel, og lenker til ressurser som vil hjelpe deg å forstå emnet bedre.

51. Instance Methods

Se skriptet her

52. Class Methods

Se skriptet her

53. Static Methods

Se skriptet her

54. Inheritance

Se skriptet her

55. Polymorphism

Se skriptet her

56. Encapsulation

Se skriptet her

57. Abstraction

Se skriptet her

58. File Handling - Reading

Se skriptet her

59. File Handling - Writing

Se skriptet her

60. File Handling - Appending

Se skriptet her

61. Error Handling - Try/Except

Se skriptet her

62. Error Handling - Finally

Se skriptet her

63. Error Handling - Else

Se skriptet her

64. Custom Exceptions

Se skriptet her

65. Logging

Se skriptet herpython class MyClass: def init(self, name): self.name = name

   def greet(self):
       return f"Hello, {self.name}"

obj = MyClass("John") print(obj.greet())

- **Forklaring:** Instansmetoder er funksjoner som er definert i en klasse og som kan manipulere objektets tilstand. De blir vanligvis kalt på et objekt som er en instans av klassen.
- **Ressurser:**
  - [Real Python - Instance Methods](https://realpython.com/python3-object-oriented-programming/#instance-methods)
  - [W3Schools - Python Classes](https://www.w3schools.com/python/python_classes.asp)

### 52. **Class Methods**
```python
class MyClass:
    @classmethod
    def class_method(cls):
        return "This is a class method"

print(MyClass.class_method())

53. Static Methods

class MyClass:
    @staticmethod
    def static_method():
        return "This is a static method"

print(MyClass.static_method())

54. Inheritance

class Animal:
    def __init__(self, name):
        self.name = name

    def speak(self):
        return f"{self.name} makes a noise"

class Dog(Animal):
    def speak(self):
        return f"{self.name} barks"

dog = Dog("Fido")
print(dog.speak())

55. Polymorphism

class Animal:
    def speak(self):
        pass

class Dog(Animal):
    def speak(self):
        return "Bark"

class Cat(Animal):
    def speak(self):
        return "Meow"

for animal in (Dog(), Cat()):
    print(animal.speak())

56. Encapsulation

class MyClass:
    def __init__(self, name):
        self.__name = name

    def get_name(self):
        return self.__name

obj = MyClass("John")
print(obj.get_name())

57. Abstraction

from abc import ABC, abstractmethod

class Animal(ABC):
    @abstractmethod
    def sound(self):
        pass

class Dog(Animal):
    def sound(self):
        return "Bark"

dog = Dog()
print(dog.sound())
  • Forklaring: Abstraksjon er prosessen med å skjule detaljer og vise bare essensielle funksjoner. Dette oppnås i Python ved å bruke abstrakte klasser som ikke kan instansieres og som krever at subklasser implementerer bestemte metoder.
  • Ressurser:

58. File Handling - Reading

Se skriptet her

59. File Handling - Writing

Se skriptet her

60. File Handling - Appending

Se skriptet her

61. Error Handling - Try/Except

Se skriptet her

62. Error Handling - Finally

Se skriptet her

63. Error Handling - Else

try:
    result = 10 / 2
except ZeroDivisionError:
    print("You cannot divide by zero!")
else: