Dari Pemula hingga Mahir - Tutorial Komprehensif, Problem Solving, dan IDE Interaktif
Python adalah bahasa pemrograman tingkat tinggi yang dibuat pada tahun 1989 oleh Guido van Rossum. Python dirancang dengan fokus pada keterbacaan kode dan kesederhanaan. Bahasa ini telah menjadi salah satu bahasa pemrograman paling populer di dunia karena kemudahan penggunaan dan fleksibilitasnya.
Sintaks Python mirip dengan bahasa Inggris
Bisa digunakan untuk web, data science, AI, automation, dll
Ribuan library dan framework tersedia
Tulis kode lebih cepat dengan lebih sedikit baris
Salah satu bahasa paling dicari di industri tech
Buka terminal Anda dan periksa versi Python 3 yang terpasang dengan perintah
python --version
Download dari - dan jalankan installer
Atau memakai terminal (win + R lalu ketik cmd)
winget search python
kemudian
winget install Python.Python.3
brew install python3
sudo apt-get install python3
sudo dnf install python3
# or
sudo yum install python3
sudo pacman -S python
Program pertama Anda dalam Python.
print("Hello, World!")
Menyimpan dan menggunakan data dalam program.
name = "Budi"
age = 20
height = 175.5
print(name)
print(age)
Melakukan operasi matematika dan perbandingan.
a = 10
b = 3
print(a + b) # 13
print(a > b) # True
print(a == b) # False
Menerima input dari pengguna.
name = input("Enter Name: ")
age = int(input("Age: "))
print(f"Name: {name}")
print(f"Age: {age}")
Bekerja dengan teks dan string.
text = "Hello Python"
print(text.upper()) # HELLO PYTHON
print(text.lower()) # hello python
print(len(text)) # 11
print(text[0]) # H
Menambahkan penjelasan dalam kode.
# This is a comment
"""
Multi-line comment
"""
print("Hello") # Output text
Memahami berbagai tipe data Python.
num = 25
pi = 3.14
text = "hello"
flag = True
print(type(num)) # <class 'int'>
print(type(pi)) # <class 'float'>
print(type(text)) # <class 'str'>
Menyimpan multiple items.
fruits = ["apple", "banana", "cherry"]
print(fruits[0]) # apple
print(len(fruits)) # 3
fruits.append("grape")
fruits.remove("banana")
Menyimpan data key-value.
person = {
"name": "Budi",
"age": 25
}
print(person["name"]) # Budi
person["age"] = 26
Immutable collection.
coordinates = (10, 20)
colors = ("red", "green", "blue")
print(coordinates[0]) # 10
print(len(colors)) # 3
Mengubah tipe data.
num_str = "123"
num_int = int(num_str)
age = 25
age_str = str(umur)
price = "90.000"
price_float = float(harga)
Manipulasi string.
text = "Hello World"
print(text.upper()) # HELLO WORLD
print(text.lower()) # hello world
print(text.replace("World", "Python"))
words = text.split() # ['Hello', 'World']
Membuat keputusan berdasarkan kondisi.
age = 18
if age >= 18:
print("Adult")
else:
print("Children")
Mengulang melalui sequence.
for i in range(5):
print(i) # 0, 1, 2, 3, 4
fruits = ["apple", "banana"]
for fruit in fruits:
print(fruit)
Mengulang selama kondisi benar.
i = 1
while i <= 5:
print(f"Number {i}")
i += 1
# Break & Continue
for i in range(5):
if i == 3:
continue
print(i)
Menggabungkan multiple kondisi.
age = 20
salary = 5000000
if age >= 18 and salary >= 1000000:
print("can be borrowed")
if x > 0 or x < -10:
print("conditions are met")
Menggunakan loop dalam loop.
# Multiplication table
for i in range(1, 4):
for j in range(1, 4):
print(f"{i} x {j} = {i*j}", end=" ")
print()
Membuat list dengan cara elegan.
squares = [x**2 for x in range(1, 6)]
# [1, 4, 9, 16, 25]
even = [x for x in range(1, 11) if x % 2 == 0]
# [2, 4, 6, 8, 10]
Membuat dan menggunakan function.
def greet(name):
return f"Halo, {name}!"
result = greet("Budi")
print(result)
def add(a, b):
return a + b
print(add(5, 3)) # 8
Function dengan default values.
def greet(name="Teman"):
print(f"Halo, {name}!")
greet() # Halo, Teman!
greet("Budi") # Halo, Budi!
Flexible parameters.
def sum_numbers(*args):
return sum(args)
print(sum_numbers(1, 2, 3, 4)) # 10
def print_info(**kwargs):
for key, value in kwargs.items():
print(f"{key}: {value}")
Anonymous functions satu baris.
square = lambda x: x ** 2
print(square(5)) # 25
add = lambda x, y: x + y
print(add(3, 5)) # 8
Transform & filter data.
nums = [1, 2, 3, 4, 5]
squared = list(map(lambda x: x**2, nums))
# [1, 4, 9, 16, 25]
even = list(filter(lambda x: x % 2 == 0, nums))
# [2, 4]
Enhance functions.
def decorator(func):
def wrapper():
print("Before")
func()
print("After")
return wrapper
@decorator
def say_hello():
print("Hello!")
say_hello()
Membuat class dan object.
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
def introduce(self):
return f"I'm {self.name}"
p = Person("Budi", 25)
print(p.introduce())
Mewarisi dari class lain.
class Animal:
def speak(self):
print("Sound")
class Dog(Animal):
def speak(self):
print("Bark")
dog = Dog()
dog.speak() # Bark
Berbagai object, interface sama.
class Cat:
def speak(self):
return "Meow"
class Dog:
def speak(self):
return "Woof"
def animal_sound(animal):
print(animal.speak())
animal_sound(Cat()) # Meow
animal_sound(Dog()) # Woof
Membatasi akses ke data.
class Bank:
def __init__(self, balance):
self.__balance = balance
def deposit(self, amount):
self.__balance += amount
def get_balance(self):
return self.__balance
Getter dan setter.
class Circle:
def __init__(self, radius):
self._radius = radius
@property
def area(self):
return 3.14 * self._radius ** 2
c = Circle(5)
print(c.area) # 78.5
Methods yang tidak perlu self.
class Math:
@staticmethod
def add(a, b):
return a + b
@classmethod
def from_string(cls, s):
return cls(*map(int, s.split()))
print(Math.add(5, 3)) # 8
Kesalahan penulisan kode - kurang colon, indentasi salah, dll.
Periksa baris yang ditunjukkan error dengan cermat.
# β FALSE
if x > 5
print("x lebih besar")
# β
TRUE
if x > 5:
print("x lebih besar")
Variabel belum didefinisikan atau nama salah.
Pastikan variabel sudah didefinisikan sebelum digunakan.
# β FALSE
print(name) # name tidak didefinisikan
# β
TRUE
name = "Budi"
print(name)
Operasi pada tipe data yang tidak sesuai.
Lakukan konversi tipe data sebelum operasi.
# β FALSE
umur = input("Umur: ")
total = umur + 10 # TypeError
# β
TRUE
umur = int(input("Umur: "))
total = umur + 10
Mengakses index yang tidak ada.
Pastikan index berada dalam range.
# β FALSE
fruits = ["apple", "banana"]
print(fruits[5]) # IndexError
# β
TRUE
print(fruits[0]) # apple
print(fruits[-1]) # banana
Indentasi tidak konsisten.
Gunakan 4 spasi atau tab konsisten.
# β FALSE
if x > 5:
print("x lebih besar")
# β
TRUE
if x > 5:
print("x lebih besar")
Tulis dan jalankan kode Python langsung di browser ini!
β Catatan: IDE ini menggunakan simulator Python berbasis JavaScript. dan IDE ini tidaklah lengkap!!, gunakan instalasi Python lokal!. β