Basics of working with data input and output in Python
Function input(): Receiving data from the user
The input() function is used to receive data from the user. When this function is called, the program stops running, and it waits for the user to enter any data and press the Enter key.
The key point to remember is that the entered data is always returned as a string (data type str), even if the user entered only numbers.
If you need to get an integer (int) or a decimal fraction (float) for your task, you need to perform an explicit type conversion. This is easily done by wrapping the input() function in the appropriate function: int() or float().
# input() always returns a string
name = input()
# Converting the entered string to an integer
age = int(input())
# Converting an entered string to a fractional number
sqr = float(input())
A useful tip: In order for the user to understand what data is required from him, you can pass a hint string to the input() function. This prompt will be displayed on the screen before the program starts waiting for input.
name = input("Enter your name:")
age =int(input("Enter your age:"))
print("Hello,", name, "! You", age, "years.")
Functions for type conversion
Converting one data type to another is one of the most common operations in programming.
float() function
It is used to convert data to a floating-point number (decimal). This can be useful when working with prices, measurements, or division results.
price_str = "99.99"
count_int = 5
# Convert string and integer to float
price_float = float(price_str)
count_float = float(count_int)
print(price_float) # Outputs: 99.99
print(count_float) # Outputs: 5.0
Function int()
It is used to convert data to an integer.
It is important to remember: When converting a fractional number to an integer using int(), the fractional part is simply discarded, and not rounded according to mathematical rules.
price_str = "123"
pi_float = 3.14159
price_int = int(price_str)
pi_int = int(pi_float)
print(price_int) # Outputs: 123
print(pi_int) # Outputs: 3 (the fractional part .14159 has been discarded)
Function str()
Is used to convert data to a string. This is necessary when you want to "glue" (concatenate) a string with a number.
price = 123
pi = 3.14
price_str = str(price)
pi_str = str(pi)
# Now we can safely "glue" the strings
print("Product price: " + price_str) # Outputs: "Product price: 123"
print("The number of Pi is approximately equal to " + pi_str) # It will display: "The number of Pi is approximately 3.14"
A useful tip: If you try to convert a string that is not a number (for example, "hello") to int() or float(), the program returns the error ValueError. Always be sure about the format of the data you are converting.
Function print(): Data output to the screen
The print() function is required to display data on the screen. This is a very versatile feature.
1. Output of multiple values You can pass multiple values separated by commas to print(). By default, they will be separated by a space.
name = "Vladimir"
age = 20
print(name) # Outputs: Vladimir
print(name, age) # Will output: Vladimir 20
print("Name:", name, "Age:", age) # Outputs: Name: Vladimir Age: 20
2. Performing calculations inside print() You can perform mathematical operations right inside the function.
count = 5
price = 20
print(count * price) # Outputs: 100
3. Output control using sep and end
- The
sep (separator) argument allows you to change the separator between the elements.
- The
end argument allows you to change the character that is placed at the end of the output (by default, it switches to a new line \n).
print("apple", "banana", "cherry", sep=", ") # Outputs: apple, banana, cherry
print("The first part of the string...", end="") # There will be no transition to a new line
print("...the second part on the same line.")
4. Modern formatting method: f-strings This is the most convenient and recommended way to format strings in modern Python. It allows you to embed variables and even expressions directly into a string.
- The string must start with the letter
f before the quotation marks.
- Variables or expressions are placed in curly braces
{}.
Compare the old and new approaches:
count = 5
price = 20
# The old way (adding strings)
print(str(count) + " * " + str(price) + " = " + str(count * price))
# A new, convenient way (f-string)
print(f"{count} * {price} = {count * price}")
Both examples will display: 5 * 20 = 100, but the f-string is much cleaner and easier to read.