bellshade / Python

Repositori untuk belajar pemrograman Python dalam bahasa Indonesia
MIT License
157 stars 95 forks source link

feat: Menambahkan materi baru pada object_oriented_programming/advance #313

Closed tomsdroid closed 5 months ago

tomsdroid commented 6 months ago

Deskripsi (Description)

Checklist:

Umum:

Contributor Requirements (Syarat Kontributor) dan Lain-Lain:

Unit Testing dan Linting:

Environment

Saya menggunakan (I'm using):

linked issue #NOMOR_ISSUE

tomsdroid commented 6 months ago

Baik nanti akan di revisi lagi agar mudah untuk di baca, mohon bantuannya

Pada Kam, 7 Mar 2024 15.58, Iqbal Ramadhan Anniswa @.***> menulis:

@.**** commented on this pull request.

nice,tp agak kurang menjelaskan tipe data pada paramater/argument di setiap fungsi / object

In object_oriented/advance/pycode/decorators/contoh_decorators1.py https://github.com/bellshade/Python/pull/313#discussion_r1515763012:

@@ -0,0 +1,18 @@ +# Buatlah fungsi dengan nama apapun yang kamu inginkan, pada contoh pertama kita akan memberikan fungsi dengan nama menyapa. +def menyapa(s1):

untuk paramater s1 di kasih typing seperti

def menyapa(s1:str)->str:


In object_oriented/advance/pycode/decorators/contoh_decorators2.py https://github.com/bellshade/Python/pull/313#discussion_r1515764944:

@@ -0,0 +1,26 @@ +# Apabila melihat tanda backslash n (\n) itu tandanya kita bisa memotong panjang karakter dan dapat memberikan baris baru. +# Fungsi pertama kita buat dengan nama (kasar), yang hanya mengembalikan suatu nilai perubahan text. +def kasar(s):

kasih hype typing biar jelas yang baca kak

def kasar(s:str)->str:


In object_oriented/advance/pycode/decorators/contoh_decorators2.py https://github.com/bellshade/Python/pull/313#discussion_r1515765636:

@@ -0,0 +1,26 @@ +# Apabila melihat tanda backslash n (\n) itu tandanya kita bisa memotong panjang karakter dan dapat memberikan baris baru. +# Fungsi pertama kita buat dengan nama (kasar), yang hanya mengembalikan suatu nilai perubahan text. +def kasar(s):

  • return s.upper()
  • +# Fungsi kedua kita buat dengan nama (lembut), yang hanya mengembalikan suatu nilai perubahan text. +def lembut(s):

def lembut(s:str)->str:


In object_oriented/advance/pycode/decorators/contoh_decorators2.py https://github.com/bellshade/Python/pull/313#discussion_r1515768169:

@@ -0,0 +1,26 @@ +# Apabila melihat tanda backslash n (\n) itu tandanya kita bisa memotong panjang karakter dan dapat memberikan baris baru. +# Fungsi pertama kita buat dengan nama (kasar), yang hanya mengembalikan suatu nilai perubahan text. +def kasar(s):

  • return s.upper()
  • +# Fungsi kedua kita buat dengan nama (lembut), yang hanya mengembalikan suatu nilai perubahan text. +def lembut(s):

  • return s.lower()
  • +# Fungsi ketiga kita buat dengan nama (kalem), yang bertujuan untuk menampilkan isi nilai dari Fungsi sebelumnya. +def kalem(func):

from typing import Callabledef kalem(func:Callable)->str:


In object_oriented/advance/pycode/decorators/contoh_decorators3.py https://github.com/bellshade/Python/pull/313#discussion_r1515773588:

@@ -0,0 +1,18 @@ +# Kita buat fungsi terluar dengan nama (users) +def users(nama):

from typing import Callabledef users(nama:str)->Callable:


In object_oriented/advance/pycode/decorators/contoh_decorators3.py https://github.com/bellshade/Python/pull/313#discussion_r1515774221:

@@ -0,0 +1,18 @@ +# Kita buat fungsi terluar dengan nama (users) +def users(nama): +

  • Saatnya kita buat fungsi didalam fungsi ddngan nama (belajar)

  • def belajar(s):

def belajar(s:str)-> str:


In object_oriented/advance/pycode/decorators/decorators_return.py https://github.com/bellshade/Python/pull/313#discussion_r1515777852:

@@ -0,0 +1,28 @@ +# openseries function: fungsi ini akan kita jadikan sebagai decorators function +def openseries(func):

from typing import Callabledef openseries(func:Callable)->Callable:


In object_oriented/advance/pycode/decorators/decorators_return.py https://github.com/bellshade/Python/pull/313#discussion_r1515780398:

  • *args, **kwargs
  • ) # <- Space func dari parameter fungsi (openseries)
  • print(
  • f"Dieksekusi dari fungsi: {func.name}"
  • ) # <- Mencetak nama dari fungsi (add)
  • return return_val
  • return wrap # <- Mengembalikan fungsi (wrap) sebagai fungsi terdalam (openseries)
  • +# ----------| Cara Penggunaan Decorators Yang Argumen Parameter |---------- #

  • +# Cara memanggil fungsi (wrap & openseries) @.*** +def add(a, b):

@openseriesdef add(a:int | float, b:int | float)->str:

atau juga bisa

from typing import @.*** add(a:Union[int,float], b:Union[int ,float])->str:


In object_oriented/advance/pycode/magic_methods/main.py https://github.com/bellshade/Python/pull/313#discussion_r1515781671:

@@ -0,0 +1,32 @@ +# Mempelajari Magic Mathod Python + + +# Membuat class dengan nama Pastikom, dengan memiliki 2 parameter yakni yourname & email. +class Pastikom: +

  • Mendefinisikan fungsi init atau menginisialisasikan untuk bertujuan agar class Pastikom dapat menerima input dengan 2 parameter [yourname & email]

  • def init(self, yourname, email):

def init(self,yourname:str,email:str)->None:

— Reply to this email directly, view it on GitHub https://github.com/bellshade/Python/pull/313#pullrequestreview-1921807659, or unsubscribe https://github.com/notifications/unsubscribe-auth/AUEI7M33ETJEWEYUBVFEHM3YXAT35AVCNFSM6AAAAABEKPBI7OVHI2DSMVQWIX3LMV43YUDVNRWFEZLROVSXG5CSMV3GSZLXHMYTSMRRHAYDONRVHE . You are receiving this because you authored the thread.Message ID: @.***>

mergify[bot] commented 5 months ago

terima kasih atas kontribusinya @tomsdroid !