User Input¶
Python memungkinkan input pengguna.
Artinya, kita bisa meminta input dari pengguna.
Contoh berikut meminta nama Anda, dan ketika Anda memasukkan nama, nama tersebut akan tercetak di layar:
#Ask for user input:
print("Enter your name:")
name = input()
print(f"Hello {name}")
Catatan
Python berhenti mengeksekusi ketika sampai pada fungsi input() dan melanjutkan ketika pengguna telah memberikan beberapa masukan.
Using prompt¶
Pada contoh di atas, pengguna harus memasukkan nama mereka di baris baru. Fungsi input() Python memiliki parameter prompt, yang berfungsi sebagai pesan yang dapat Anda letakkan di depan input pengguna, pada baris yang sama:
#Add a message in front of the user input:
name = input("Enter your name:")
print(f"Hello {name}")
Multiple Inputs¶
Anda dapat menambahkan masukan sebanyak yang Anda inginkan, Python akan berhenti mengeksekusi pada masing-masing masukan, menunggu masukan pengguna:
#Multiple inputs:
name = input("Enter your name:")
print(f"Hello {name}")
fav1 = input("What is your favorite animal:")
fav2 = input("What is your favorite color:")
fav3 = input("What is your favorite number:")
print(f"Do you want a {fav2} {fav1} with {fav3} legs?")
Input Number¶
Masukan dari pengguna diperlakukan sebagai string. Meskipun, dalam contoh di atas, Anda dapat memasukkan angka, interpreter Python akan tetap memperlakukannya sebagai string.
Anda dapat mengonversi masukan menjadi angka dengan fungsi float():
#To find the square root, the input has to be converted into a number:
x = input("Enter a number:")
#find the square root of the number:
y = math.sqrt(float(x))
print(f"The square root of {x} is {y}")
Validate Input¶
Memvalidasi setiap masukan dari pengguna merupakan praktik yang baik. Dalam contoh di atas, kesalahan akan terjadi jika pengguna memasukkan sesuatu selain angka.
Untuk menghindari kesalahan, kita dapat menguji masukan tersebut. Jika bukan angka, pengguna mungkin akan mendapatkan pesan seperti "Wrong input, please try again", dan diizinkan untuk memasukkan masukan baru:
#Keep asking until you get a number:
y = True
while y == True:
x = input("Enter a number:")
try:
x = float(x);
y = False
except:
print("Wrong input, please try again.")
print("Thank you!")