Python (bahasa pemrograman)
Python adalah bahasa pemrograman interpretatif multiguna[10] dengan filosofi perancangan yang berfokus pada tingkat keterbacaan kode.[11] Python diklaim sebagai bahasa yang menggabungkan kapabilitas, kemampuan, dengan sintaksis kode yang sangat jelas,[12] dan dilengkapi dengan fungsionalitas pustaka standar yang besar serta komprehensif.
Python | |
---|---|
Paradigma | multi-paradigm: object-oriented, imperative, functional, procedural, reflective |
Dirancang oleh | Guido van Rossum |
Pengembang | Python Software Foundation |
Rilis perdana | 1991 |
Rilis stabil | 3.4.2 / 13 Oktober 2014 2.7.8/ 13 Oktober 2014 |
Tipe sistem | duck, dynamic, strong |
Sistem operasi | Cross-platform |
Lisensi | Python Software Foundation License |
Ekstensi nama berkas | .py, .pyw, .pyc, .pyo, .pyd |
Situs web | python.org |
Repositori | www |
Implementasi utama | |
Dialek | |
Cython, RPython, Stackless Python | |
Terpengaruh oleh | |
ABC,[1] ALGOL 68,[2] C,[3] C++,[4] Dylan,[5] Haskell,[6] Icon,[7] Java,[8] Lisp,[butuh rujukan] Modula-3,[4] Perl | |
Mempengaruhi | |
Boo, Cobra, D, Falcon, Groovy, JavaScript, Ruby[9] | |
Sunting kotak info • L • B |
Python mendukung multi paradigma pemrograman, utamanya; namun tidak dibatasi; pada pemrograman berorientasi objek, pemrograman imperatif, dan pemrograman fungsional. Salah satu fitur yang tersedia pada python adalah sebagai bahasa pemrograman dinamis yang dilengkapi dengan manajemen memori otomatis. Seperti halnya pada bahasa pemrograman dinamis lainnya, python umumnya digunakan sebagai bahasa skrip meski pada praktiknya penggunaan bahasa ini lebih luas mencakup konteks pemanfaatan yang umumnya tidak dilakukan dengan menggunakan bahasa skrip. Python dapat digunakan untuk berbagai keperluan pengembangan perangkat lunak dan dapat berjalan di berbagai platform sistem operasi.
Saat ini kode python dapat dijalankan di berbagai platform sistem operasi, beberapa diantaranya dalah:
- Linux/Unix
- Windows
- Mac OS X
- Java Virtual Machine
- OS/2
- Amiga
- Palm
- Symbian (untuk produk-produk Nokia)
Python didistribusikan dengan beberapa lisensi yang berbeda dari beberapa versi. Lihat sejarahnya di Python Copyright. Namun pada prinsipnya Python dapat diperoleh dan dipergunakan secara bebas, bahkan untuk kepentingan komersial. Lisensi Python tidak bertentangan baik menurut definisi Open Source maupun General Public License (GPL)
Sejarah
Python dikembangkan oleh Guido van Rossum pada tahun 1990 di CWI, Amsterdam sebagai kelanjutan dari bahasa pemrograman ABC. Versi terakhir yang dikeluarkan CWI adalah 1.2.
Tahun 1995, Guido pindah ke CNRI sambil terus melanjutkan pengembangan Python. Versi terakhir yang dikeluarkan adalah 1.6. Tahun 2000, Guido dan para pengembang inti Python pindah ke BeOpen.com yang merupakan sebuah perusahaan komersial dan membentuk BeOpen PythonLabs. Python 2.0 dikeluarkan oleh BeOpen. Setelah mengeluarkan Python 2.0, Guido dan beberapa anggota tim PythonLabs pindah ke DigitalCreations.
Saat ini pengembangan Python terus dilakukan oleh sekumpulan pemrogram yang dikoordinir Guido dan Python Software Foundation. Python Software Foundation adalah sebuah organisasi non-profit yang dibentuk sebagai pemegang hak cipta intelektual Python sejak versi 2.1 dan dengan demikian mencegah Python dimiliki oleh perusahaan komersial. Saat ini distribusi Python sudah mencapai versi 2.6.1 dan versi 3.0.
Nama Python dipilih oleh Guido sebagai nama bahasa ciptaannya karena kecintaan Guido pada acara televisi Monty Python's Flying Circus. Oleh karena itu seringkali ungkapan-ungkapan khas dari acara tersebut seringkali muncul dalam korespondensi antar pengguna Python.
Fitur
Beberapa fitur yang dimiliki Python adalah:
- memiliki kepustakaan yang luas; dalam distribusi Python telah disediakan modul-modul 'siap pakai' untuk berbagai keperluan.
- memiliki tata bahasa yang jernih dan mudah dipelajari.
- memiliki aturan layout kode sumber yang memudahkan pengecekan, pembacaan kembali dan penulisan ulang kode sumber.
- berorientasi obyek.
- memiliki sistem pengelolaan memori otomatis (garbage collection, seperti java)
- modular, mudah dikembangkan dengan menciptakan modul-modul baru; modul-modul tersebut dapat dibangun dengan bahasa Python maupun C/C++.
- memiliki fasilitas pengumpulan sampah otomatis, seperti halnya pada bahasa pemrograman Java, python memiliki fasilitas pengaturan penggunaan ingatan komputer sehingga para pemrogram tidak perlu melakukan pengaturan ingatan komputer secara langsung.
- memiliki banyak faslitas pendukung sehingga mudah dalam pengoprasiannya.
Masukan / Keluaran
Contoh masukan :
nama = raw_input("Masukkan nama Anda: ")
Contoh keluaran :
print "Halo", nama, ":)"
Halo Dunia
Perintah ini biasanya digunakan untuk menguji keberhasilan pemasangan Python dalam komputer.
print ("Halo dunia!")
Lihat pula
Rujukan
- ^ van Rossum, Guido (1993). "An Introduction to Python for UNIX/C Programmers". Proceedings of the NLUUG najaarsconferentie (Dutch UNIX users group).
even though the design of C is far from ideal, its influence on Python is considerable.
- ^ Kuchling, Andrew M. (22 December 2006). "Interview with Guido van Rossum (July 1998)". amk.ca. Diakses tanggal 12 March 2012.
- ^ van Rossum, Guido (1993). "An Introduction to Python for UNIX/C Programmers". Proceedings of the NLUUG najaarsconferentie (Dutch UNIX users group).
even though the design of C is far from ideal, its influence on Python is considerable.
- ^ a b "Classes". The Python Tutorial. Python Software Foundation. Diakses tanggal 20 February 2012.
It is a mixture of the class mechanisms found in C++ and Modula-3
- ^ Simionato, Michele. "The Python 2.3 Method Resolution Order". Python Software Foundation.
The C3 method itself has nothing to do with Python, since it was invented by people working on Dylan and it is described in a paper intended for lispers
- ^ Kuchling, A. M. "Functional Programming HOWTO". Python v2.7.2 documentation. Python Software Foundation. Diakses tanggal 9 February 2012.
- ^ Schemenauer, Neil; Peters, Tim; Hetland, Magnus Lie (18 May 2001). "PEP 255 – Simple Generators". Python Enhancement Proposals. Python Software Foundation. Diakses tanggal 9 February 2012.
- ^ Smith, Kevin D.; Jewett, Jim J.; Montanaro, Skip; Baxter, Anthony (2 September 2004). "PEP 318 – Decorators for Functions and Methods". Python Enhancement Proposals. Python Software Foundation. Diakses tanggal 24 February 2012.
- ^ Bini, Ola (2007). Practical JRuby on Rails Web 2.0 Projects: bringing Ruby on Rails to the Java platform. Berkeley: APress. hlm. 3. ISBN 978-1-59059-881-8.
- ^ "What is Python Good For?". General Python FAQ. Python Software Foundation. Diakses tanggal 2008-09-05.
- ^ "What is Python? Executive Summary". Python documentation. Python Software Foundation. Diakses tanggal 2007-03-21.
- ^ "General Python FAQ". python.org. Python Software Foundation. Diakses tanggal 2009-06-27.
Pranala luar
- (Inggris) Situs resmi bahasa pemrograman Python
- (Inggris) Kumpulan modul/paket Python
- (Inggris) Why Python? oleh Eric Raymond
- (Inggris) Situs Agregasi Blog Planet Python
- (Indonesia) Situs komunitas Python Indonesia
- (Indonesia) Milis komunitas Python Indonesia