Pendahuluan
Python adalah bahasa pemrograman tingkat tinggi dan terinterpretasi yang populer karena kesederhanaannya dan mudah dibaca. Dokumentasi ini akan memberikan gambaran umum tentang bahasa pemrograman Python, dimulai dari konsep dasar hingga fitur canggih. Baik Anda baru memulai di dunia programmer atau telah memiliki pengalaman, semua konten ini dirancang untuk menjadi panduan bagi Anda.
Instalasi Python
Sebelum memulai, pastikan Anda sudah menginstal Python di komputer Anda. Untuk informasi instalasi lebih lanjut, kunjungi website resmi Python: https://www.python.org/. Pastikan versi Python yang Anda gunakan sesuai dengan kebutuhan proyek Anda. Selama ini, rekomendasi untuk digunakan adalah Python 3.x.
Cara Menjalankan Kode Python
Setelah Python terinstall, Anda dapat mengetik perintah berikut di terminal atau command prompt untuk melakukan verifikasi instalasi:
python --version
atau
py --version
Untuk mengeksekusi script Python, jalankan perintah berikut:
python nama_file.py
atau
py nama_file.py
Ganti nama_file.py
dengan nama file script Python yang ingin Anda jalankan.
Komentar dan Penafian
Dokumen ini merupakan hasil tugas saya selaku pelajar ilmu komputer. Semua konten disini dipetik dari referensi resmi sehingga tidak ada plagiasi apapun. Jika terdapat kesalahan ataupun masukan penambahan, silakan hubungi saya di mhmmdriann@gmail.com. Terima kasih.
Bagian 1: Konsep Dasar Python
Variabel
Variabel adalah wadah tempat kita menyimpan data. Di Python, variabel didefinisikan dengan cara langsung asignasinya ke suatu nilai. Misalnya:
nama = "John Doe"
umur = 25
tinggi_badan = 170.5
Anda bebas menggunakan huruf besar atau kecil, serta karakter spesial (kecuali spasi). Namun, harus diawali oleh huruf atau underscore (_).
Tipe Data
Terdapat beberapa tipe data dasar di Python, antara lain:
- string: teks yang dicantumkan di dalam tanda petik satu (‘’) atau tanda petik dua (“”)
- integer: bilangan bulat tanpa koma
- float: bilangan desimal
- boolean: nilai benar (True) atau salah (False)
- list: koleksi item yang dikelompokkan dalam kurung siku [] dan dipisahkan koma
- tuple: koleksi item yang dikelompokkan dalam kurung () dan dipisahkan koma; tidak dapat diubah setelah dideklarasikan
- dictionary: koleksi pasangan key-value yang dikelompokkan dalam kurung kurawal {}
- set: koleksi item unik yang dipisahkan koma dan dikelompokkan dalam kurung kurawal {}; tidak mempertahankan urutan items
Berikut contoh tiap tipe data:
# string
nama = "John Doe"
# integer
umur = 25
# float
tinggi_badan = 170.5
# boolean
sudah_menikah = False
# list
daftar_buah = ["apel", "mangga", "pisang"]
# tuple
data_diri = ("John Doe", 25, True)
# dictionary
identitas = {
"nama": "John Doe",
"umur": 25,
"status": True
}
# set
hobi = {"renang", "memancing", "main game"}
Operator
Ada beberapa operator yang dapat digunakan di Python, antara lain:
Operator | Deskripsi | Contoh | Hasil |
---|---|---|---|
+ |
Penjumlahan | 1 + 2 |
3 |
- |
Pengurangan | 5 - 4 |
1 |
* |
Perkalian | 6 * 8 |
48 |
/ |
Pembagian | 9 / 4 |
2.25 |
// |
Pembulatan bagi kebilangan terdekat | 11 // 4 |
2 |
% |
Modulus | 12 % 5 |
2 |
** |
Eksponensial | 2 ** 3 |
8 |
== |
Sama dengan | 5 == 5 |
True |
!= |
Tidak sama dengan | 5 != 4 |
True |
< |
Kurang dari | 3 < 4 |
True |
> |
Lebih dari | 6 > 3 |
True |
<= |
Kurang dari sama dengan | 4 <= 4 |
True |
>= |
Lebih dari sama dengan | 10 >= 9 |
True |
and |
Logika AND | True and False |
False |
or |
Logika OR | True or False |
True |
not |
Negasi logika | not True |
False |
Input dan Output
Untuk menerima input dari user, gunakan fungsi input()
. Berikut contoh input dan output:
print("Masukkan nama Anda: ")
nama = input() # User mengetik "John Doe"
print(f"Halo, {nama}")
Hasil:
Masukkan nama Anda: John Doe
Halo, John Doe
Jika Anda ingin menerima input numerik, perlu dilakukan casting ke tipe data yang diinginkan. Contoh:
print("Masukkan usia Anda: ")
umur = int(input()) # User mengetik "25"
print(f"Usia Anda adalah {umur} tahun.")
Hasil:
Masukkan usia Anda: 25
Usia Anda adalah 25 tahun.
Kontrol Aliran
Di Python, terdapat beberapa struktur kontrol aliran, antara lain:
- If else statement
- For loop
- While loop
If Else Statement
Struktur if else statement mirip dengan bahasa pemrograman lainnya. Berikut contoh if else statement:
nilai = 85
if nilai >= 80:
print("Nilai Anda A")
elif nilai >= 70:
print("Nilai Anda B")
else:
print("Nilai Anda C")
Hasil:
Nilai Anda A
For Loop
For loop digunakan untuk iterasi atau melakukan perulangan sesuai dengan rentang atau koleksi items. Berikut contoh for loop:
for i in range(5):
print(i)
Hasil:
0
1
2
3
4
While Loop
While loop digunakan untuk melakukan perulangan selama kondisi tertentu true. Berikut contoh while loop:
i = 0
while i < 5:
print(i)
i += 1
Hasil:
0
1
2
3
4
Bagian 2: Fungsionalitas Lanjutan Python
Fungsi
Fungsi adalah blok kode yang dapat digunakan berulang kali. Functions didefinisikan dengan keyword def
, followed by function name, parentheses ()
, dan colon :
. Arguments dituliskan didalam parentheses. Berikut contoh definisi fungsi:
def hitung_luas_persegi(sisi):
luas = sisi * sisi
return luas
Untuk memanggil fungsi, cukup tuliskan nama fungsinya, lalu ikuti dengan parameter yang sesuai. Contoh:
hasil = hitung_luas_persegi(5)
print(f"Luas persegi dengan sisi 5 adalah {hasil}")
Hasil:
Luas persegi dengan sisi 5 adalah 25
Class Dan Objek
Python merupakan bahasa pemograman objek oriented. Setiap class merepresentasikan template untuk membuat object. Object sendiri mewakili instance dari class. Sebelum membuat class, mari kita pelajari attribute dan method.
Method adalah fungsi yang terhubung dengan class. Mari lihat contoh class, attribut, dan method:
class Mahasiswa:
universitas = 'Universitas XYZ' # Attribut class
def __init__(self, nama, npm): # Method constructor
self.nama = nama # Atribute instance
self.npm = npm
def cetak_info(self): # Method
print(f'Nama: {self.nama}, NPM: {self.npm}')
mahasiswa1 = Mahasiswa('John Doe', '12345678')
mahasiswa1.cetak_info()
Hasil:
Nama: John Doe, NPM: 12345678
Dalam contoh di atas, Mahasiswa
adalah class, universitas
, nama
, dan npm
adalah attribut, sedangkan __init__
dan cetak_info
adalah method.
Exception Handling
Exception handling adalah teknik untuk mengatur hal-hal yang tidak diinginkan saat eksekusi program. Dalam Python, exception handlings didefinisikan dengan try
dan except
. Berikut contoh exception handling:
try:
x = 10 / 0
except ZeroDivisionError as e:
print(f'Terjadi error: {e}')
try:
with open('file.txt', 'r') as f:
content = f.read()
except FileNotFoundError as e:
print(f'File tidak ditemukan: {e}')
Hasil:
Terjadi error: division by zero
File tidak ditemukan: [Errno 2] No such file or directory: 'file.txt'
Dalam contoh di atas, kami mencoba melakukan bagi nol dan membaca file yang tidak ada. Hal ini akan menghasilkan exception. Namun, dengan menggunakan except, kita bisa menangani exception tersebut.
Mengimpor Modul
Modul adalah file Python yang berisi kode yang dapat digunakan lagi di file lain. Untuk mengimport modul, gunakan perintah import
. Berikut contoh import modul:
# Import modul math
import math
# Gunakan fungsi pi dari modul math
pi = math.pi
# Gunakan fungsi sqrt dari modul math
hasil = math.sqrt(16)
print(f'Pi: {pi}')
print(f'Akar Kuadrat dari 16: {hasil}')
Hasil:
Pi: 3.141592653589793
Akar Kuadrat dari 16: 4.0
Kita juga dapat menggunakan perintah from ... import ...
untuk mengimpor fungsi atau variable tertentu. Contoh:
# Import fungsi sqrt dari modul math
from math import sqrt
# Gunakan fungsi sqrt
hasil = sqrt(25)
print(f'Akar Kuadrat dari 25: {hasil}')
Hasil:
Akar Kuadrat dari 25: 5.0
Generator
Generator adalah fungsi yang bereturn value secara dinamis. Saat generator dieksekusi, ia akan membuat objek generator yang dapat digunakan untuk mendapatkan nilai berikutnya. Berikut contoh generator:
def fibonacci():
a, b = 0, 1
yield a
while True:
a, b = b, a + b
yield b
gen_fibo = fibonacci()
for i in range(10):
next(gen_fibo)
Hasil:
0
1
1
2
3
5
8
13
21
34
Dalam contoh di atas, kami mendefinisikan fungsi genertor fibonacci
yang bereturn angka Fibonacci. Setelah itu, kami membuat objek generator gen\_fibo
dengan menggunakan perintah next(gen\_fibo)
kami dapat mendapatkan nilai berikutnya.
Bagian 3: Framework & Library Python
Flask
Flask adalah framework micro web server written in Python. Flask memungkinkan kita untuk membuat aplikasi web ringan dan fleksibel. Untuk memulai project Flask, install terlebih dahulu Flask menggunakan pip:
$ pip install flask
Buat file app.py dan tambahkan kode berikut:
from flask import Flask, render_template
app = Flask(__name__)
@app.route('/')
def home():
return render_template('home.html')
if __name__ == '__main__':
app.run()
Buat folder templates dan tambahkan file home.html:
<!DOCTYPE html>
<html>
<head>
<title>Halaman Utama</title>
</head>
<body>
<h1>Selamat Datang Ke Website Kami!</h1>
</body>
</html>
Jalankan aplikasi Flask dengan perintah berikut:
$ export FLASK_APP=app.py
$ flask run
Hasil:
* Debugger is active!
* Debugger PIN: XXXX-XXXX-XXXX
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
Klik link http://127.0.0.1:5000/ untuk melihat hasil.
Scrapy
Scrapy adalah framework crawler dan scraping yang ditulis dalam bahasa pemrogaman Python. Scrapy diciptakan untuk mengumpulkan data dari internet. Untuk mulai menggunakan Scrapy, install terlebih dahulu Scrapy menggunakan pip:
$ pip install scrapy
Buat folder project Scrapy dan jalankan perintah berikut:
$ cd myproject
$ scrapy startproject myspider
Buat folder spiders dan buat file spider.py:
import scrapy
from ..items import MyItem
class SpiderClass(scrapy.Spider):
name = 'myspider'
allowed_domains = ['example.com']
start_urls = ['http://www.example.com']
def parse(self, response):
myitem = MyItem()
myitem['judul'] = response.css('.title::text').extract()
myitem['deskripsi'] = response.css('.description::text').extract()
yield myitem
Buat file items.py:
import scrapy
class MyItem(scrapy.Item):
judul = scrapy.Field()
deskripsi = scrapy.Field()
Jalankan spider dengan perintah berikut:
$ scrapy crawl myspider
Hasil:
...
[scrapy.core.engine] DEBUG: Crawled (200) <GET https://www.example.com> (referer: None)
[scrapy.core.scraper] DEBUG: Scraped from <200 https://www.example.com>
{'judul': ['Contoh Judul'], 'deskripsi': ['Contoh Deskripsi']}
...
Data yang telah di-scraping akan tersimpan dalam bentuk JSON.
Pandas
Pandas adalah library data analisis yang sangat populer dalam bahasa pemrograman Python. Pandas memungkinkan kita untuk melakukan operasi dataframe dan seri. Install terlebih dahulu Pandas menggunakan pip:
$ pip install pandas
Buat file main.py dan tambahkan kode berikut:
import pandas as pd
data = {'Nama': ['John', 'Anna', 'Peter'],
'Umur': [25, 22, 28],
'Negara': ['Amerika Serikat', 'Finlandia', 'Inggris']}
df = pd.DataFrame(data)
print(df)
Hasil:
Nama Umur Negara
0 John 25 Amerika Serikat
1 Anna 22 Finlandia
2 Peter 28 Inggris
Dalam contoh di atas, kami membuat data frame dari dictionary data
. Kemudian, kami mencetak data frame tersebut menggunakan metode print()
.
Referensi
- Python Software Foundation. (2021). Welcome to Python.org. Retrieved March 15, 2023, from https://docs.python.org/3/tutorial/index.html
- Real Python. (2021). Real Python - Learn Python Programming. Retrieved March 15, 2023, from https://realpython.com/
- Flask Documentation. (2021). Flask Web Development — The Full-Stack Web Developer’s Guide to Developing Web Applications Using Python — Scott Wingo 2nd Edition. Retrieved March 15, 2023, from https://flask.palletsprojects.com/en/2.1.x/
- Scrapy Tutorial. (2021). Official Scrapy Tutorial. Retrieved March 15, 2023, from https://doc.scrapy.org/en/latest/intro/tutorial.html
- McKinney, Wes. (2018). Python for Data Analysis: Data Wrangling with Pandas, NumPy, and IPython. O’Reilly Media. ISBN: 978-1-491-95766-0. Retrieved March 15, 2023, from https://pandas.pydata.org/pandas-docs/stable/