# 1. Membangkitkan Selera Anda

Jika Anda melakukan banyak pekerjaan pada komputer, pada akhirnya Anda menemukan bahwa ada beberapa tugas yang ingin Anda lakukan secara otomatis. Misalnya, Anda mungkin ingin melakukan pencarian-dan-ganti dari sejumlah besar berkas teks, atau ganti nama dan atur ulang banyak file foto dengan cara yang rumit. Mungkin Anda ingin menulis basis data khusus kecil, atau aplikasi GUI khusus, atau permainan sederhana.

Jika Anda seorang pengembang perangkat lunak profesional, Anda mungkin harus bekerja dengan beberapa pustaka C/C++ /Java tetapi menemukan siklus penulisan/kompilasi/pengujian/kompilasi ulang yang biasa terlalu lambat. Mungkin Anda sedang menulis serangkaian pengujian untuk pustaka seperti itu dan menemukan menulis kode pengujian tugas yang membosankan. Atau mungkin Anda telah menulis sebuah program yang dapat menggunakan bahasa ekstensi, dan Anda tidak ingin merancang dan mengimplementasikan bahasa yang sama sekali baru untuk aplikasi Anda.

Python adalah bahasa yang sesuai untuk Anda.

Anda bisa menulis skrip Unix shell atau berkas batch Windows untuk beberapa tugas ini, tetapi skrip shell paling baik untuk bergerak di sekitar berkas dan mengubah data teks, tidak cocok untuk aplikasi atau game GUI. Anda bisa menulis program C/C++/Java, tetapi mungkin butuh banyak waktu pengembangan untuk mendapatkan bahkan program draft pertama. Python lebih mudah digunakan, tersedia di sistem operasi Windows, Mac OS X, dan Unix, dan akan membantu Anda menyelesaikan pekerjaan dengan lebih cepat.

Python mudah digunakan, tetapi ini adalah bahasa pemrograman nyata, menawarkan lebih banyak struktur dan dukungan untuk program besar daripada skrip shell atau berkas batch dapat tawarkan. Di sisi lain, Python juga menawarkan pemeriksaan kesalahan jauh lebih banyak daripada C, dan, karena bahasa tingkat sangat tinggi, ia memiliki tipe data tingkat tinggi yang tertanam di dalamnya, seperti arrays dan dictionary yang fleksibel. Karena tipe datanya yang lebih umum, Python dapat diterapkan pada domain masalah yang jauh lebih besar daripada Awk atau bahkan Perl, namun banyak hal yang setidaknya semudah dalam Python seperti pada bahasa-bahasa tersebut.

Python memungkinkan Anda untuk membagi program Anda menjadi modul yang dapat digunakan kembali dalam program Python lainnya. Muncul dengan koleksi besar modul standar yang dapat Anda gunakan sebagai dasar program Anda --- atau sebagai contoh untuk mulai belajar memprogram dengan Python. Beberapa modul ini menyediakan hal-hal seperti berkas I/O, panggilan sistem, soket, dan bahkan antarmuka ke toolkit antarmuka pengguna grafis seperti Tk.

Python adalah bahasa yang ditafsirkan, yang dapat menghemat waktu Anda selama pengembangan program karena tidak diperlukan kompilasi dan penautan. interpreter dapat digunakan secara interaktif, yang membuatnya mudah untuk bereksperimen dengan fitur-fitur bahasa, untuk menulis throw-away programs, atau untuk menguji fungsi selama pengembangan program bottom-up. Ini juga merupakan kalkulator meja yang berguna.

Python memungkinkan program ditulis secara ringkas dan mudah dibaca. Program yang ditulis dengan Python biasanya jauh lebih pendek daripada program C, C++, atau Java yang setara, karena beberapa alasan:

- tipe data tingkat tinggi memungkinkan Anda untuk mengekspresikan operasi yang kompleks dalam satu pernyataan;

- pengelompokan pernyataan dilakukan dengan indentasi alih-alih tanda kurung kurawal di awal dan akhir;

- tidak ada deklarasi variabel atau argumen yang diperlukan.

Python bersifa extensible: jika Anda tahu cara memprogram dalam C, mudah untuk menambahkan fungsi atau modul bawaan baru ke interpreter, baik untuk melakukan operasi kritis dengan kecepatan maksimum, atau untuk menautkan program Python ke perpustakaan yang mungkin hanya tersedia dalam bentuk biner (seperti pustaka grafik spesifik vendor). Setelah Anda benar-benar ketagihan, Anda dapat menautkan juru bahasa Python ke dalam aplikasi yang ditulis dalam C dan menggunakannya sebagai ekstensi atau bahasa perintah untuk aplikasi itu.

Ngomong-ngomong, bahasa tersebut dinamai menurut acara BBC "Sirkus Terbang Monty Python" dan tidak ada hubungannya dengan reptil. Membuat referensi ke sandiwara Monty Python dalam dokumentasi tidak hanya diizinkan, tetapi juga dianjurkan!

Sekarang Anda semua bersemangat tentang Python, Anda akan ingin memeriksanya lebih terinci. Karena cara terbaik untuk belajar bahasa adalah menggunakannya, tutorial mengundang Anda untuk bermain dengan interpreter Python saat Anda membaca.

Dalam bab selanjutnya, mekanisme penggunaan interpreter dijelaskan. Ini adalah informasi yang biasa saja, tetapi penting untuk mencoba contoh yang ditunjukkan nanti.

Sisa tutorial ini memperkenalkan berbagai fitur bahasa dan sistem Python melalui contoh, dimulai dengan ekspresi sederhana, pernyataan dan tipe data, melalui fungsi dan modul, dan akhirnya menyentuh konsep-konsep lanjutan seperti pengecualian dan kelas yang ditentukan pengguna.