Skip to content

ಬಳಕೆದಾರರಿಂದ ಇನ್‌ಪುಟ್ ಪಡೆಯುವುದು (Getting User Input)

ಪೈಥಾನ್‌ನಲ್ಲಿ, input() ಫಂಕ್ಷನ್ ಬಳಸಿ ನಾವು ಬಳಕೆದಾರರಿಂದ ಡೇಟಾವನ್ನು (ಮಾಹಿತಿಯನ್ನು) ಪಡೆಯಬಹುದು. ಈ ಫಂಕ್ಷನ್ ಪ್ರೋಗ್ರಾಮ್‌ನ ಚಾಲನೆಯನ್ನು ನಿಲ್ಲಿಸಿ, ಬಳಕೆದಾರರು ಏನನ್ನಾದರೂ ಟೈಪ್ ಮಾಡಿ Enter ಕೀ ಒತ್ತುವವರೆಗೆ ಕಾಯುತ್ತದೆ.

input() ಫಂಕ್ಷನ್‌ನಿಂದ ಬರುವ ಡೇಟಾವು ಯಾವಾಗಲೂ ಸ್ಟ್ರಿಂಗ್ (str) ಡೇಟಾ ಟೈಪ್‌ನಲ್ಲಿರುತ್ತದೆ.


1. ಮೂಲಭೂತ ಇನ್‌ಪುಟ್ (Basic Input)

input() ಫಂಕ್ಷನ್‌ನೊಳಗೆ ನಾವು ಒಂದು ಪ್ರಶ್ನೆಯನ್ನು (prompt) ನೀಡಬಹುದು. ಈ ಪ್ರಶ್ನೆಯು ಬಳಕೆದಾರರಿಗೆ ಏನು ಟೈಪ್ ಮಾಡಬೇಕೆಂದು ತಿಳಿಸುತ್ತದೆ.

ಉದಾಹರಣೆ:

# ಬಳಕೆದಾರರ ಹೆಸರನ್ನು ಕೇಳುವುದು
name = input("ದಯವಿಟ್ಟು ನಿಮ್ಮ ಹೆಸರನ್ನು ನಮೂದಿಸಿ: ")

# ಪಡೆದ ಹೆಸರನ್ನು ಪ್ರಿಂಟ್ ಮಾಡುವುದು
print(f"ನಮಸ್ಕಾರ, {name}! ನಿಮಗೆ ಸ್ವಾಗತ.")

ಚಾಲನೆಯ ಸಮಯದಲ್ಲಿ:

ದಯವಿಟ್ಟು ನಿಮ್ಮ ಹೆಸರನ್ನು ನಮೂದಿಸಿ: ರವಿ
ನಮಸ್ಕಾರ, ರವಿ! ನಿಮಗೆ ಸ್ವಾಗತ.


2. ಸಂಖ್ಯೆಗಳನ್ನು ಇನ್‌ಪುಟ್ ಆಗಿ ಪಡೆಯುವುದು (Getting Numbers as Input)

input() ಫಂಕ್ಷನ್ ಯಾವಾಗಲೂ ಸ್ಟ್ರಿಂಗ್ ಅನ್ನು ಹಿಂತಿರುಗಿಸುವುದರಿಂದ, ನಾವು ಗಣಿತದ ಲೆಕ್ಕಾಚಾರಗಳನ್ನು ಮಾಡಲು ಆ ಸ್ಟ್ರಿಂಗ್ ಅನ್ನು ಸಂಖ್ಯೆಯ ಡೇಟಾ ಟೈಪ್‌ಗೆ (int ಅಥವಾ float) ಪರಿವರ್ತಿಸಬೇಕಾಗುತ್ತದೆ. ಇದನ್ನು ಟೈಪ್ ಕ್ಯಾಸ್ಟಿಂಗ್ (Type Casting) ಎನ್ನುತ್ತಾರೆ.

ಉದಾಹರಣೆ: ವಯಸ್ಸನ್ನು int ಆಗಿ ಪಡೆಯುವುದು

age_str = input("ನಿಮ್ಮ ವಯಸ್ಸನ್ನು ನಮೂದಿಸಿ: ")

# ಸ್ಟ್ರಿಂಗ್ ಅನ್ನು ಇಂಟಿಜರ್‌ಗೆ ಪರಿವರ್ತಿಸುವುದು
age_int = int(age_str)

# ಲೆಕ್ಕಾಚಾರ ಮಾಡುವುದು
next_year_age = age_int + 1
print(f"ಮುಂದಿನ ವರ್ಷ ನಿಮಗೆ {next_year_age} ವರ್ಷ ವಯಸ್ಸಾಗುತ್ತದೆ.")

ಚಾಲನೆಯ ಸಮಯದಲ್ಲಿ:

ನಿಮ್ಮ ವಯಸ್ಸನ್ನು ನಮೂದಿಸಿ: 25
ಮುಂದಿನ ವರ್ಷ ನಿಮಗೆ 26 ವರ್ಷ ವಯಸ್ಸಾಗುತ್ತದೆ.

ಗಮನಿಸಿ: ಬಳಕೆದಾರರು ಸಂಖ್ಯೆಯ ಬದಲು ಅಕ್ಷರಗಳನ್ನು ನಮೂದಿಸಿದರೆ, ValueError ಎಂಬ ಎರರ್ ಬರುತ್ತದೆ.

# age_str = "abc"
# age_int = int(age_str)  # ValueError: invalid literal for int() with base 10: 'abc'


3. ಒಂದೇ ಸಾಲಿನಲ್ಲಿ ಅನೇಕ ಇನ್‌ಪುಟ್‌ಗಳನ್ನು ಪಡೆಯುವುದು (Getting Multiple Inputs in One Line)

ಬಳಕೆದಾರರು ಒಂದೇ ಸಾಲಿನಲ್ಲಿ ಸ್ಪೇಸ್‌ನಿಂದ ಬೇರ್ಪಡಿಸಿದ ಅನೇಕ ಮೌಲ್ಯಗಳನ್ನು ನೀಡಬಹುದು. ಇವುಗಳನ್ನು ಪ್ರತ್ಯೇಕಿಸಲು ನಾವು split() ಮೆಥಡ್ ಅನ್ನು ಬಳಸಬಹುದು.

ಉದಾಹರಣೆ:

# ಬಳಕೆದಾರರಿಂದ ಎರಡು ಸಂಖ್ಯೆಗಳನ್ನು ಪಡೆಯುವುದು
input_str = input("ಎರಡು ಸಂಖ್ಯೆಗಳನ್ನು ಸ್ಪೇಸ್‌ನಿಂದ ಬೇರ್ಪಡಿಸಿ ನಮೂದಿಸಿ: ")

# ಸ್ಟ್ರಿಂಗ್ ಅನ್ನು ಸ್ಪೇಸ್ ಬಳಸಿ ವಿಭಜಿಸುವುದು
num1_str, num2_str = input_str.split()

# ಸ್ಟ್ರಿಂಗ್‌ಗಳನ್ನು ಇಂಟಿಜರ್‌ಗೆ ಪರಿವರ್ತಿಸುವುದು
num1 = int(num1_str)
num2 = int(num2_str)

print(f"ನೀವು ನಮೂದಿಸಿದ ಸಂಖ್ಯೆಗಳು: {num1} ಮತ್ತು {num2}")
print(f"ಅವುಗಳ ಮೊತ್ತ: {num1 + num2}")

ಚಾಲನೆಯ ಸಮಯದಲ್ಲಿ:

ಎರಡು ಸಂಖ್ಯೆಗಳನ್ನು ಸ್ಪೇಸ್‌ನಿಂದ ಬೇರ್ಪಡಿಸಿ ನಮೂದಿಸಿ: 10 20
ನೀವು ನಮೂದಿಸಿದ ಸಂಖ್ಯೆಗಳು: 10 ಮತ್ತು 20
ಅವುಗಳ ಮೊತ್ತ: 30

map() ಫಂಕ್ಷನ್ ಬಳಸಿ ಸಂಕ್ಷಿಪ್ತ ವಿಧಾನ

map() ಫಂಕ್ಷನ್ ಬಳಸಿ ಮೇಲಿನ ಕೋಡ್ ಅನ್ನು ಇನ್ನಷ್ಟು ಸಂಕ್ಷಿಪ್ತವಾಗಿ ಬರೆಯಬಹುದು. map() ಫಂಕ್ಷನ್ ಒಂದು ಸೀಕ್ವೆನ್ಸ್‌ನ ಪ್ರತಿಯೊಂದು ಐಟಂಗೆ ನಿರ್ದಿಷ್ಟ ಫಂಕ್ಷನ್ ಅನ್ನು ಅನ್ವಯಿಸುತ್ತದೆ.

# map() ಬಳಸಿ ಒಂದೇ ಸಾಲಿನಲ್ಲಿ ಪರಿವರ್ತನೆ
num1, num2 = map(int, input("ಎರಡು ಸಂಖ್ಯೆಗಳನ್ನು ಸ್ಪೇಸ್‌ನಿಂದ ಬೇರ್ಪಡಿಸಿ ನಮೂದಿಸಿ: ").split())

print(f"ನೀವು ನಮೂದಿಸಿದ ಸಂಖ್ಯೆಗಳು: {num1} ಮತ್ತು {num2}")
print(f"ಅವುಗಳ ಗುಣಲಬ್ಧ: {num1 * num2}")

input() ಫಂಕ್ಷನ್ ಬಳಕೆದಾರರೊಂದಿಗೆ ಸಂವಾದಿಸುವ (interactive) ಪ್ರೋಗ್ರಾಮ್‌ಗಳನ್ನು ರಚಿಸಲು ಅತ್ಯಗತ್ಯವಾಗಿದೆ.