# Tutorial Python

Tip

This tutorial is designed for programmers that are new to the Python language, not beginners who are new to programming.

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.

The Python interpreter and the extensive standard library are freely available in source or binary form for all major platforms from the Python website, https://www.python.org/, and may be freely distributed. The same site also contains distributions of and pointers to many free third party Python modules, programs and tools, and additional documentation.

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. Be aware that it expects you to have a basic understanding of programming in general. 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 Python/C API reference manual. 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.1.5. Unpacking in Lists and List Comprehensions
  - 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. Brief tour of the standard library
  - 10.1. Operating system interface
  - 10.2. File wildcards
  - 10.3. Command-line arguments
  - 10.4. Error output redirection and program termination
  - 10.5. String pattern matching
  - 10.6. Matematika
  - 10.7. Internet access
  - 10.8. Dates and times
  - 10.9. Data compression
  - 10.10. Performance measurement
  - 10.11. Quality control
  - 10.12. Batteries included
- 11. Brief tour of the standard library --- part II
  - 11.1. Output formatting
  - 11.2. Templating
  - 11.3. Working with binary data record layouts
  - 11.4. Multi-threading
  - 11.5. Pencatatan
  - 11.6. Weak references
  - 11.7. Tools for working with 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