Argument Value di Python
Seringkali kita harus memberikan input dinamis ke script Python yang dijalankan. Salah satu teknik yang bisa digunakan adalah menggunakan argument value dari modul sys di Python. Bagaimana ceritanya?
Kita menjalankan sebuah script Python yang melakukan operasi penjumlahan dengan cara seperti ini
python penjumlahan.py
Kita bisa menambahkan argumen di belakang perintah tersebut, misalnya dua operand yang akan dijumlahkan
python penjumlahan.py 2 3
Bagaimana menangkap dua argumen tambahan (nilai 2 dan 3) di atas? Kita mengimpor modul sys terlebih dulu dan dilanjutkan dengan mengambil nilai argumen kemudian melakukan operasi penjumlahan
#!/usr/bin/env python import sys # mendapatkan nilai operand operand1 = float(sys.argv[1]) operand2 = float(sys.argv[2]) # operasi penjumlahan dan cetak hasilnya ke layar hasil_penjumlahan = operand1 + operand2 print hasil_penjumlahan
Argumen dikonversi ke float untuk mengonversi tipe data string ke float agar bisa dilakukan perhitungan (by default, argument value bertipe data string). Pada contoh di atas, sys.argv dimulai dengan indeks 1, ke mana indeks yang ke-0? Mari kita cek urutan indeks argument value ini
- sys.argv[0] -> penjumlahan.py
- sys.argv[1] -> 2
- sys.argv[2] -> 3
Sudah jelas bukan? Silakan jalankan contoh di atas dengan perintah sebagai berikut
python penjumlahan.py 2 3
Sebenarnya, contoh di atas bisa kita persingkat lagi sehingga hanya menghasilkan beberapa baris. Coba simak contoh di bawah ini.
#!/usr/bin/env python import sys # mendapatkan nilai operand operand1, operand2 = sys.argv[1:] # cetak hasil operasi penjumlahan ke layar print float(operand1) + float(operand2)
Indeks pada sys.argv ditunjukkan dengan [1:], artinya semua argument value dari indeks 1 sampai terakhir (ditunjukkan dengan tanda “:”) disimpan dalam variabel-variabel di ruas kiri (dua variabel yaitu operand1 dan operand2). Kemudian, konversi ke tipe data floatĀ dilakukan pada saat operasi penjumlahan dan hasilnya langsung dicetak ke layar. Happy coding ^_^
December 24, 2011
One response to Argument Value di Python
Pingback: Kalkulator Sederhana Client-Server | Studiawan