目次
1. Cara Dasar Menggunakan Argumen Baris Perintah di Python
Apa itu Argumen Baris Perintah?
Argumen baris perintah adalah informasi tambahan yang diberikan bersama dengan perintah eksekusi saat menjalankan program Python. Dengan ini, program dapat berperilaku lebih fleksibel atau menerima data dari luar dengan mudah. Misalnya, dengan memberikan nama file atau nilai konfigurasi sebagai argumen, isi program dapat diubah secara dinamis.Mengambil Argumen Baris Perintah dengan sys.argv
Di Python, kita dapat menggunakan modul standar sys
untuk mengambil argumen baris perintah. Variabel sys.argv
menyimpan argumen tersebut dalam bentuk list. Elemen pertama dari list (sys.argv[0]
) adalah nama skrip yang dijalankan, dan elemen selanjutnya adalah nilai argumen yang diberikan.Contoh Kode: Program Perhitungan Sederhana
import sys
def main():
if len(sys.argv) < 3:
print("Error: Diperlukan 2 argumen")
return
num1 = float(sys.argv[1])
num2 = float(sys.argv[2])
print(f"Hasil penjumlahan: {num1 + num2}")
if __name__ == "__main__":
main()
Program di atas menjumlahkan dua angka yang diberikan dari baris perintah dan menampilkannya. Contoh eksekusi:$ python script.py 3 5
Hasil penjumlahan: 8.0

2. Pemrosesan Argumen Lanjutan dengan Modul argparse
Dasar argparse
Dengan sys.argv
kita bisa mengambil argumen dasar, tetapi jika jumlah argumen banyak atau kita ingin menggunakan argumen opsional dan flag (misalnya --verbose
), modul standar argparse
lebih cocok. Modul ini memudahkan analisis argumen serta menghasilkan pesan error otomatis.Membuat Parser untuk Analisis Argumen
Untuk menggunakanargparse
, pertama kita membuat parser. Kemudian, kita mendefinisikan argumen yang akan diterima dan menganalisis input baris perintah.Contoh Kode: Penggunaan Dasar argparse
import argparse
def main():
parser = argparse.ArgumentParser(description='Ini adalah program contoh')
parser.add_argument('arg1', help='Argumen pertama')
parser.add_argument('arg2', type=float, help='Argumen kedua (angka)')
args = parser.parse_args()
print(f"arg1 = {args.arg1}")
print(f"arg2 = {args.arg2}")
if __name__ == "__main__":
main()
Program ini menerima dua argumen. arg1
diperlakukan sebagai string, sedangkan arg2
diperlakukan sebagai angka, lalu hasil parsing ditampilkan.$ python script.py test 5.5
arg1 = test
arg2 = 5.5
Menggunakan Argumen Opsional dan Flag
Fitur kuat dariargparse
adalah kemampuannya menangani argumen opsional dan flag. Dengan ini, kita bisa membuat kode yang hanya berjalan jika argumen tertentu diberikan, atau menambahkan output detail menggunakan flag seperti --verbose
.Contoh Kode: Menggunakan Argumen Opsional dan Flag
import argparse
def main():
parser = argparse.ArgumentParser()
parser.add_argument('--verbose', action='store_true', help='Tampilkan output detail')
parser.add_argument('numbers', nargs='+', type=float, help='Daftar angka')
args = parser.parse_args()
total = sum(args.numbers)
if args.verbose:
print(f"Detail perhitungan: jumlah dari {args.numbers} adalah {total}")
else:
print(f"Hasil penjumlahan: {total}")
if __name__ == "__main__":
main()
Jika flag --verbose
digunakan, program akan menampilkan detail perhitungan. Jika tidak, hanya hasil sederhana yang ditampilkan.$ python script.py 1 2 3 --verbose
Detail perhitungan: jumlah dari [1.0, 2.0, 3.0] adalah 6.0

3. Penanganan Error dan Validasi Argumen
Validasi Jumlah dan Tipe Argumen
Saat menggunakan argumen baris perintah, penting untuk memastikan pengguna memberikan input dengan benar agar program tidak salah berfungsi. Dengan memvalidasi jumlah dan tipe argumen, stabilitas program dapat terjaga.Contoh Kode: Validasi Jumlah dan Tipe Argumen
import sys
def main():
if len(sys.argv) != 3:
print("Error: Diperlukan 2 argumen")
return
try:
num1 = float(sys.argv[1])
num2 = float(sys.argv[2])
except ValueError:
print("Error: Argumen harus berupa angka")
return
print(f"Hasil penjumlahan: {num1 + num2}")
if __name__ == "__main__":
main()
Program ini akan menampilkan pesan error jika jumlah argumen tidak sesuai (skrip + 2 angka) atau jika input bukan angka.4. Contoh Penggunaan dan Aplikasi Nyata
Contoh Membuat Alat Baris Perintah
Salah satu penerapan praktis argumen baris perintah adalah membuat alat baris perintah untuk operasi file atau pemrosesan data.Contoh Kode: Alat untuk Menghitung Jumlah Baris File
import argparse
def main():
parser = argparse.ArgumentParser(description='Alat untuk menghitung jumlah baris dalam file')
parser.add_argument('filename', help='Nama file yang akan dihitung')
args = parser.parse_args()
try:
with open(args.filename, 'r') as file:
lines = file.readlines()
print(f"Jumlah baris dalam file {args.filename}: {len(lines)}")
except FileNotFoundError:
print(f"Error: File {args.filename} tidak ditemukan")
if __name__ == "__main__":
main()
Alat ini menghitung jumlah baris dalam file yang ditentukan dan menampilkannya.$ python count_lines.py example.txt
Jumlah baris dalam file example.txt: 100
5. Kesimpulan
Dengan mempelajari cara menggunakan argumen baris perintah di Python, Anda dapat membuat program lebih fleksibel. Dari metode sederhana menggunakansys.argv
hingga pemrosesan argumen yang lebih kompleks dengan argparse
, penting untuk memilih pendekatan sesuai kebutuhan. Selain itu, menambahkan validasi dan penanganan error akan membuat program lebih andal.