# 2. Menggunakan Interpreter Python

## 2.1. Memanggil Interpreter

The Python interpreter is usually installed as `/usr/local/bin/python3.13` on those machines where it is available; putting `/usr/local/bin` in your Unix shell's search path makes it possible to start it by typing the command:

    python3.13

ke shell. [1] Karena pilihan direktori tempat interpreter berada adalah opsi instalasi, bisa jadi di tempat lain; tanyakan kepada guru Python Anda di sekitar atau administrator sistem. (Mis., `/usr/local/python` adalah lokasi alternatif yang populer.)

On Windows machines where you have installed Python from the Microsoft Store, the `python3.13` command will be available. If you have the py.exe launcher installed, you can use the `py` command. See Excursus: Setting environment variables for other ways to launch Python.

Mengetik karakter akhir file (``Control`-`D`` pada Unix, :kbd:` Control-Z` pada Windows) pada prompt utama menyebabkan interpreter keluar dengan status keluar nol. Jika itu tidak berhasil, Anda dapat keluar dari interpreter dengan mengetikkan perintah berikut: `quit()`.

Fitur pengeditan garis interpreter termasuk pengeditan interaktif, penggantian riwayat dan penyelesaian kode pada sistem yang mendukung pustaka GNU Readline. Mungkin pemeriksaan tercepat untuk melihat apakah pengeditan baris perintah didukung dengan mengetik ``Control`-`P`` ke prompt Python pertama yang Anda dapatkan. Jika berbunyi bip, Anda memiliki pengeditan baris perintah; lihat Lampiran Pengeditan Input Interaktif dan Penggantian Riwayat untuk pengantar tombol. Jika tampaknya tidak ada yang terjadi, atau jika muncul `^P`, pengeditan baris perintah tidak tersedia; Anda hanya akan dapat menggunakan backspace untuk menghapus karakter dari baris saat ini.

Interpreter beroperasi mirip seperti shell Unix: ketika dipanggil dengan masukan bawaan yang terhubung ke perangkat tty, ia membaca dan mengeksekusi perintah secara interaktif; ketika dipanggil dengan argumen nama berkas atau dengan berkas sebagai masukan bawaan, ia membaca dan mengeksekusi script dari berkas itu.

A second way of starting the interpreter is `python -c command [arg] ...`, which executes the statement(s) in command, analogous to the shell's `-c` option. Since Python statements often contain spaces or other characters that are special to the shell, it is usually advised to quote command in its entirety.

Beberapa modul Python juga berguna sebagai skrip. Ini dapat dipanggil menggunakan `python -m module [arg] ...`, yang mengeksekusi berkas sumber untuk module seolah-olah Anda telah menuliskan nama lengkapnya pada baris perintah.

Ketika berkas skrip digunakan, terkadang berguna untuk dapat menjalankan skrip dan masuk ke mode interaktif sesudahnya. Ini dapat dilakukan dengan menuliskan `-i` sebelum skrip.

Semua opsi baris perintah dijelaskan dalam Baris perintah dan lingkungan.

### 2.1.1. Melewatkan Argumen

Ketika diketahui oleh interpreter, nama skrip dan argumen tambahan sesudahnya diubah menjadi daftar string dan diberikan nilai ke variabel `argv` dalam modul `sys`. Anda dapat mengakses daftar ini dengan menjalankan `import sys`. Panjang daftar setidaknya satu; ketika tidak ada skrip dan tidak ada argumen yang diberikan, `sys.argv[0]` adalah string kosong. Ketika nama skrip diberikan sebagai `'-'` (artinya standar masukan), `sys.argv[0]` diatur ke `'-'`. Ketika command `-c` digunakan, `sys.argv[0]` diatur ke``'-c'`. Ketika *module* :option:`-m` digunakan, ``sys.argv[0]` diatur ke nama lengkap modul yang digunakan. Opsi ditemukan setelah command `-c` atau module `-m` tidak dikonsumsi oleh pemrosesan opsi interpreter Python tetapi ditinggalkan di `sys.argv` untuk perintah atau modul yang akan ditangani .

### 2.1.2. Mode Interaktif

Ketika perintah dibaca dari tty, interpreter dikatakan dalam interactive mode. Dalam mode ini interpreter meminta perintah berikutnya dengan primary prompt, biasanya tiga tanda lebih besar dari (`>>>`); untuk garis lanjutan, interpreter meminta dengan secondary prompt, secara bawaan tiga titik (`...`). Interpreter mencetak pesan selamat datang yang menyatakan nomor versinya dan pemberitahuan hak cipta sebelum mencetak prompt pertama:

    $ python3.13
    Python 3.13 (default, April 4 2023, 09:25:04)
    [GCC 10.2.0] on linux
    Type "help", "copyright", "credits" or "license" for more information.
    >>>

Garis lanjutan diperlukan ketika memasuki konstruksi multi-garis. Sebagai contoh, lihat ini pernyataan `if`:

    >>> the_world_is_flat = True
    >>> if the_world_is_flat:
    ...     print("Be careful not to fall off!")
    ...
    Be careful not to fall off!

Untuk lebih lanjut tentang mode interaktif, lihat Mode Interaktif.

## 2.2. Interpreter dan Lingkungannya

### 2.2.1. Encoding Penulisan Kode Sumber

Secara bawaan, berkas sumber Python diperlakukan sebagai tulisan encoded dalam UTF-8. Dalam pengkodean itu, sebagian besar karakter bahasa di dunia dapat digunakan secara bersamaan dalam string literal, pengidentifikasi dan komentar --- meskipun pustaka standar hanya menggunakan karakter ASCII untuk pengidentifikasi, sebuah konvensi yang harus diikuti oleh setiap kode portabel. Untuk menampilkan semua karakter ini dengan benar, editor Anda harus mengenali bahwa berkas tersebut adalah UTF-8, dan itu harus menggunakan font yang mendukung semua karakter dalam berkas.

Untuk mendeklarasikan penyandian encoding selain yang bawaan, baris komentar khusus harus ditambahkan sebagai baris first pada berkas. Sintaksnya adalah sebagai berikut

    # -*- coding: encoding -*-

di mana encoding adalah salah satu yang valid `codec` yang didukung oleh Python.

Misalnya, untuk menyatakan bahwa pengkodean encoding Windows-1252 harus digunakan, baris pertama file kode sumber Anda harus:

    # -*- coding: cp1252 -*-

Satu pengecualian untuk aturan baris pertama adalah ketika kode sumber dimulai dengan UNIX "shebang" line. Dalam hal ini, deklarasi penyandian encoding harus ditambahkan sebagai baris kedua pada berkas. Sebagai contoh:

    #!/usr/bin/env python3
    # -*- coding: cp1252 -*-

Catatan kaki

[ 1 ]

Pada Unix, interpreter Python 3.x secara default tidak diinstal sebagai aplikasi yang dapat dieksekusi dengan nama `python`, sehingga tidak bertentangan dengan aplikasi Python 2.x yang diinstal secara bersamaan.