# Tutorial Python

Python adalah bahasa pemrograman yang berdaya dan mudah dipelajari. Python memiliki struktur data tingkat tinggi yang efisien dan pendekatan yang sederhana namun efektif untuk pemrograman berorientasi objek. Sintaksis Python yang elegan dan tipe dinamis, bersama dengan sifatnya yang diinterpretasikan, menjadikannya bahasa yang ideal untuk skrip dan pengembangan aplikasi yang cepat di banyak area di sebagian besar platform.

Interpreter Python dan pustaka standar yang luas tersedia secara bebas dalam bentuk kode sumber atau biner untuk semua platform utama dari situs web Python, https://www.python.org/, dan dapat didistribusikan secara bebas. Situs yang sama juga berisi distribusi dan refernsi ke banyak modul Python gratis dari pihak ketiga, program dan alat, serta dokumentasi tambahan.

Interpreter Python mudah dikembangkan dengan fungsi dan tipe data baru diimplementasikan dalam C atau C ++ (atau bahasa lain yang bisa dipanggil dari C). Python juga cocok sebagai bahasa tambahan untuk aplikasi yang dapat disesuaikan.

This tutorial introduces the reader informally to the basic concepts and features of the Python language and system. It helps to have a Python interpreter handy for hands-on experience, but all examples are self-contained, so the tutorial can be read off-line as well.

Untuk deskripsi objek dan modul standar, lihat Pustaka Standar Python. Referensi Bahasa Python memberikan definisi bahasa yang lebih formal. Untuk menulis ekstensi dalam C atau C ++, baca Memperluas dan Menggabungkan Interpreter Python dan Panduan Referensi Python/API C. Ada juga beberapa buku yang membahas Python secara mendalam.

Tutorial ini tidak mencoba menjadi komprehensif dan mencakup semua fitur, atau bahkan setiap fitur yang umum digunakan. Alih-alih, ini memperkenalkan banyak fitur Python yang paling penting, dan akan memberi Anda ide bagus tentang rasa dan gaya bahasa itu. Setelah membacanya, Anda akan dapat membaca dan menulis modul serta program Python, dan Anda akan siap untuk mempelajari lebih lanjut tentang berbagai modul pustaka Python yang dijelaskan dalam Pustaka Standar Python.

Ikhtisar juga layak untuk dilihat.

- 1. Membangkitkan Selera Anda
- 2. Menggunakan Interpreter Python
  - 2.1. Memanggil Interpreter
    - 2.1.1. Melewatkan Argumen
    - 2.1.2. Mode Interaktif
  - 2.2. Interpreter dan Lingkungannya
    - 2.2.1. Encoding Penulisan Kode Sumber
- 3. Pengantar Informal Tentang Python
  - 3.1. Menggunakan Python sebagai Kalkulator
    - 3.1.1. Angka
    - 3.1.2. Text
    - 3.1.3. List
  - 3.2. Langkah Awal Menuju Pemrograman
- 4. Lebih Banyak Alat Pengatur Aliran Control Flow
  - 4.1. Pernyataan `if`
  - 4.2. Pernyataan `for`
  - 4.3. Fungsi `range()`
  - 4.4. `break` and `continue` Statements
  - 4.5. `else` Clauses on Loops
  - 4.6. Pernyataan `pass`
  - 4.7. `match` Statements
  - 4.8. Mendefinisikan Fungsi
  - 4.9. Lebih lanjut tentang Mendefinisikan Fungsi
    - 4.9.1. Nilai Argumen Bawaan
    - 4.9.2. Argumen Kata Kunci Keyword Arguments
    - 4.9.3. Parameter spesial
      - 4.9.3.1. Argumen Posisi-atau-Kata Kunci
      - 4.9.3.2. Parameter Posisi-saja
      - 4.9.3.3. Argumen Kata Kunci-saja
      - 4.9.3.4. Contoh Fungsi
      - 4.9.3.5. Rekap
    - 4.9.4. Daftar Argumen Berubah-ubah Arbitrary
    - 4.9.5. Pembukaan Paket Unpacking Daftar Argumen
    - 4.9.6. Ekspresi Lambda
    - 4.9.7. String Dokumentasi
    - 4.9.8. Anotasi Fungsi
  - 4.10. Intermezzo: Gaya Coding
- 5. Struktur Data
  - 5.1. Lebih Lanjut tentang Daftar Lists
    - 5.1.1. Menggunakan Daftar Lists sebagai Tumpukan Stacks
    - 5.1.2. Menggunakan Daftar Lists sebagai Antrian Queues
    - 5.1.3. Daftar List Comprehensions
    - 5.1.4. Pemahaman Daftar List Comprehensions Bersarang
  - 5.2. Pernyataan `del`
  - 5.3. Tuples and Urutan Sequences
  - 5.4. Himpunan Set
  - 5.5. Kamus Dictionaries
  - 5.6. Teknik Perulangan
  - 5.7. Lebih lanjut tentang Kondisi
  - 5.8. Membandingkan Urutan Sequences dan Jenis Lainnya
- 6. Modul-Modul
  - 6.1. Lebih lanjut tentang Modul
    - 6.1.1. Mengoperasikan modul sebagai skrip
    - 6.1.2. Jalur Pencarian Modul
    - 6.1.3. Berkas Python "Compiled"
  - 6.2. Modul Standar
  - 6.3. Fungsi `dir()`
  - 6.4. Paket
    - 6.4.1. Mengimpor * Dari Paket
    - 6.4.2. Referensi Intra-paket
    - 6.4.3. Paket di Beberapa Direktori
- 7. Masukan dan Keluaran
  - 7.1. Pemformatan Keluaran yang Lebih Menarik
    - 7.1.1. Literal String Terformat
    - 7.1.2. Metode String format()
    - 7.1.3. Pemformatan String Manual
    - 7.1.4. Pemformatan string lama
  - 7.2. Membaca dan Menulis Berkas
    - 7.2.1. Metode Objek Berkas
    - 7.2.2. Menyimpan data terstruktur dengan `json`
- 8. Kesalahan errors dan Pengecualian exceptions
  - 8.1. Kesalahan Sintaksis
  - 8.2. Pengecualian
  - 8.3. Menangani Pengecualian
  - 8.4. Memunculkan Pengecualian
  - 8.5. Rantai Pengecualian
  - 8.6. Pengecualian yang Ditentukan Pengguna
  - 8.7. Mendefinisikan Tindakan Pembersihan
  - 8.8. Tindakan Pembersihan yang Sudah Ditentukan
  - 8.9. Raising and Handling Multiple Unrelated Exceptions
  - 8.10. Enriching Exceptions with Notes
- 9. Classes
  - 9.1. Sepatah Kata Tentang Nama dan Objek
  - 9.2. Lingkup Python dan Namespaces
    - 9.2.1. Contoh Lingkup Scopes dan Ruang Nama Namespaces
  - 9.3. Pandangan Pertama tentang Kelas
    - 9.3.1. Sintaks Definisi Kelas
    - 9.3.2. Objek Kelas Class Objects
    - 9.3.3. Objek Instance
    - 9.3.4. Metode Objek
    - 9.3.5. Variabel Kelas dan Instance
  - 9.4. Keterangan Acak
  - 9.5. Pewarisan
    - 9.5.1. Pewarisan Berganda
  - 9.6. Variabel Privat
  - 9.7. Barang Sisa Odds and Ends
  - 9.8. Iterators
  - 9.9. Pembangkit Generator
  - 9.10. Ekspresi Pembangkit Generator
- 10. Tur Singkat Pustaka Standar
  - 10.1. Antarmuka Sistem Operasi
  - 10.2. Berkas Wildcard
  - 10.3. Baris Perintah Berargumen
  - 10.4. Pengalihan Output Kesalahan dan Pengakhiran Program
  - 10.5. Pencocokan Pola String
  - 10.6. Matematika
  - 10.7. Akses internet
  - 10.8. Tanggal dan Waktu
  - 10.9. Kompresi Data
  - 10.10. Pengukuran Kinerja
  - 10.11. Kontrol kualitas
  - 10.12. Dilengkapi Baterai
- 11. Tur Singkat Pustaka Standar --- Bagian II
  - 11.1. Pemformatan Output
  - 11.2. Templating
  - 11.3. Bekerja dengan Tata Letak Rekam Data Biner
  - 11.4. Multi-threading
  - 11.5. Pencatatan
  - 11.6. Referensi yang Lemah
  - 11.7. Alat untuk Bekerja dengan Daftar Lists
  - 11.8. Decimal Floating-Point Arithmetic
- 12. Lingkungan dan Paket Virtual
  - 12.1. Pengantar
  - 12.2. Menciptakan Lingkungan Virtual
  - 12.3. Mengelola Paket dengan pip
- 13. Lalu apa sekarang?
- 14. Pengeditan Input Interaktif dan Penggantian Riwayat
  - 14.1. Pelengkapan Tab dan Pengeditan Riwayat
  - 14.2. Alternatif untuk Interpreter Interaktif
- 15. Floating-Point Arithmetic: Issues and Limitations
  - 15.1. Kesalahan Representasi
- 16. Lampiran
  - 16.1. Mode Interaktif
    - 16.1.1. Penanganan Kesalahan
    - 16.1.2. Skrip Python Yang Dapat Dieksekusi
    - 16.1.3. Berkas Permulaan Interaktif
    - 16.1.4. Modul Ubahsuaian