Cara informasi diperoleh dan ditangani adalah salah satu aspek terpenting dari etos bahasa pemrograman apa pun, lebih-lebih untuk informasi yang diberikan dan diperoleh dari pengguna
Python, sementara relatif lambat dalam hal ini bila dibandingkan dengan bahasa pemrograman lain seperti C atau Java, mengandung alat yang kuat untuk memperoleh, menganalisis, dan memproses data yang diperoleh langsung dari pengguna akhir.
Pada artikel ini, kita akan melihat secara singkat cara mendapatkan informasi dari pengguna melalui fungsi input() di Python dengan bantuan beberapa cuplikan kode sebagai contoh
Masukan dengan Python
Untuk menerima informasi melalui keyboard, Python menggunakan fungsi input(). Fungsi ini memiliki parameter opsional, umumnya dikenal sebagai prompt, yang merupakan string yang akan dicetak di layar setiap kali fungsi tersebut dipanggil
Catatan. Sebelum Python 3 memperkenalkan fungsi input()_, cara untuk membaca input pengguna adalah fungsi Enter a number: 13
The number you entered is: 13
1. Tetap saja, selalu disarankan untuk menggunakan Python 3 dan fungsi input() kapan pun Anda bisa
Di Python 3, fungsi Enter a number: 13
The number you entered is: 13
1 telah ditinggalkan dan diganti dengan fungsi input() dan digunakan untuk mendapatkan string pengguna melalui keyboard. Dan fungsi input()_ dari Python 2 dihentikan di versi 3. Untuk mendapatkan fungsionalitas yang sama yang disediakan oleh fungsi input() Python 2, pernyataan Enter a number: 13
The number you entered is: 13
7 harus digunakan dalam Python 3
Saat fungsi input() dipanggil, aliran program berhenti hingga pengguna memasukkan input melalui baris perintah. Untuk benar-benar memasukkan data, pengguna perlu menekan tombol ENTER setelah memasukkan string mereka. Saat menekan tombol ENTER biasanya menyisipkan karakter baris baru (Enter a number: 13 The number you entered is: 13 9), dalam hal ini tidak. String yang dimasukkan hanya akan diserahkan ke aplikasi
Sekarang setelah kita memahami teori dasar di balik fungsi input(), mari kita lihat cara kerjanya di Python
Menjalankan kode sebelumnya akan meminta kita dengan "Ketikkan sesuatu untuk menguji ini. " pesan. Setelah kita mengetik sesuatu, itu akan mencetak apa yang baru saja kita ketik
Type something to test this out: Let the Code be with you! Is this what you just said? Let the Code be with you! _Input String dan Numerik
Fungsi input()_, secara default, akan mengubah semua informasi yang diterimanya menjadi string. Contoh sebelumnya yang kami tunjukkan menunjukkan perilaku ini
Angka, di sisi lain, perlu ditangani secara eksplisit karena awalnya muncul sebagai string. Contoh berikut menunjukkan bagaimana informasi tipe numerik diterima
Menjalankan kode sebelumnya akan memberi kita
Enter a number: 13 The number you entered is: 13Pendekatan yang lebih umum adalah melakukan pembacaan input dan mengubahnya menjadi bilangan bulat dalam satu baris
test_number = int(input("Enter a number: ")) _Perlu diingat bahwa jika pengguna tidak benar-benar memasukkan bilangan bulat maka kode ini akan mengeluarkan pengecualian, bahkan jika string yang dimasukkan adalah angka floating point
Cara Menangani Pengecualian Saat Membaca Masukan
Ada beberapa cara untuk memastikan bahwa pengguna memasukkan informasi yang valid. Salah satu caranya adalah menangani semua kemungkinan kesalahan yang mungkin terjadi saat pengguna memasukkan data. Pada bagian ini kami akan mendemonstrasikan beberapa metode penanganan error yang baik untuk error yang mungkin muncul saat membaca input
Tapi pertama-tama, mari kita lihat contoh beberapa kode (berpotensi) tidak aman
test2word = input("Tell me your age: ") test2num = int(test2word) print("Wow! Your age is ", test2num)Setelah menjalankan kode ini, katakanlah Anda memasukkan string "Tiga", bukan angka 3
Tell me your age: Three _Di sini, ketika fungsi test_number = int(input("Enter a number: ")) 2 dipanggil dengan string "Tiga", pengecualian test_number = int(input("Enter a number: ")) 3 dilemparkan dan program akan berhenti dan/atau macet
Sekarang mari kita lihat bagaimana kita membuat kode ini lebih aman untuk menangani masukan pengguna
test3word = input("Tell me your lucky number: ") try: test3num = int(test3word) print("This is a valid number! Your lucky number is: ", test3num) except ValueError: print("This is not a valid number. It isn't a number at all! This is a string, go and try again. Better luck next time!")Blok kode ini akan mengevaluasi input baru. Jika input adalah bilangan bulat yang direpresentasikan sebagai string maka fungsi test_number = int(input("Enter a number: ")) 2 akan mengubahnya menjadi bilangan bulat yang tepat. Jika tidak, pengecualian akan dimunculkan, tetapi alih-alih membuat aplikasi mogok, itu akan ditangkap dan pernyataan test_number = int(input("Enter a number: ")) 5 kedua dijalankan. Berikut adalah contoh kode ini yang berjalan saat pengecualian dimunculkan
Lihat panduan praktis dan praktis kami untuk mempelajari Git, dengan praktik terbaik, standar yang diterima industri, dan menyertakan lembar contekan. Hentikan perintah Googling Git dan benar-benar pelajari itu
Dan ini adalah bagaimana kesalahan terkait masukan dapat ditangani dengan Python
Catatan. Anda dapat menggabungkan kode ini dengan konstruksi lain, seperti while loop untuk memastikan bahwa kode dijalankan berulang kali hingga Anda menerima input bilangan bulat valid yang diperlukan program Anda
Contoh Lengkap
Outputnya akan
What's your name? Francis From 1 to 7, how many hours do you use your smartphone? Impressive, Francis! You spent 180 minutes or 10800 seconds using your smartphone!Kesimpulan
Pada artikel ini, kita melihat bagaimana fungsi Python input() bawaan dapat digunakan untuk mendapatkan input pengguna dalam berbagai format. Kami juga melihat bagaimana kami dapat menangani pengecualian dan kesalahan yang mungkin terjadi saat mendapatkan input pengguna