How to Continue in Same Line in Python
How to print without newline in Python? This is a question that has troubled many newbie programmers in Python. It's because you may want to print multiple values on the same line. As Python prints every output on a different line by default, you might get confused.
The Problem
Printing the output is probably the most common command in any programming language and among the first commands that you lean. Similarly, it is among the first commands you will learn in Python.
However, unlike other programming languages that print several outputs in the same line without a new line command, Python by default prints every output on a different line.
For Example
print("Good Morning!") print("What a wonderful day!")
Output
Good Morning! What a wonderful day!
To print without a newline, all you have to do is add an additional argument at the end of your print statement. This argument is called end. In this post, we will learn more about this and other methods.
Python Print Without Newline: The Methods
- Using "end" argument in the print statement (Python 3.X)
- Using "sys" library (Python 3.X)
- Using "comma" at the end of your print statement (Python 2.X)
1. Using "end" Argument in the print statement (Python 3.X)
In Python 3, print() is a function that prints output on different lines, every time you use the function. However, you can avoid this by introducing the argument end and assigning an empty string to it. This will prevent the next output from being printed in a new line.
# use the argument "end" to specify the end of line string print("Good Morning!", end = '') print("What a wonderful day!")
Output:
Good Morning!What a wonderful day!
2. Using "sys" Library (Python 3.X) to Print Without Newline
#Import the inbuilt sys library import sys #First Line of output sys.stdout.write("Hey! Welcome to the STechies.") #Second Line of output sys.stdout.write("We have the best python tutorial")
Output:
Hey! Welcome to the STechies.We have the best python tutorial
Code Explanation:
The sys module in Python contains many functions and variables to work on the runtime environment. The information about functions, constants and methods of the Python interpreter is present in this module.
The sys.stdout is a file object that is used for displaying the output of a print statement. The sys.stdout.write() method does not add a newline at the end of a string to be displayed.
In the code, you can see that both strings are printed on the same line without any spaces in between.
Note: The output of both the example above will be in one line without adding space in between the strings.
Python Print Without Newline: Adding a Space at the End
Now if you want to insert a space in your output, you have to use a space at the end of your first print function.
Input
# use the argument "end" to specify the end of line string and print with space print("Good Morning! ", end = '') print("What a wonderful day!")
Output
Good Morning! What a wonderful day!
Printing a "List" With "for" Loop Without New Line
Code Example:
# Python program to print list without new line character # Declare a List listfruits = ['Apple', 'Banana', 'Orange', 'Mango'] # Print list using for Loop for fruit in listfruits: print(fruit, end='')
Output:
AppleBananaOrangeMango
Explanation:
In the program written above, the elements of a list are stored in a variable called listfruits. A for loop is executed to iterate over the elements and print them out one by one. You can see that an end argument is passed along with the print statement. This avoids the strings to be printed on different lines.
You can see that the elements of the list are printed together on the same line without any spaces.
Printing with a Space between List Items
Code Example:
# Python program to print list without new line character # Declare a List listfruits = ['Apple', 'Banana', 'Orange', 'Mango'] # Print list using for Loop for fruit in listfruits: print(fruit, end=' ')
Output:
Apple Banana Orange Mango
Explanation:
Here, a for loop iterated over list items to print them out on the same line using the print statement. This is achieved by passing the end argument that contains the value of an empty string. There is a space between the single quotes, as observed in the code. This creates a space between the list elements when printed out on a single line.
Printing Without A Newline In Python 2.X
To print without newline in Python 2.X, you have to use a comma where your print statement ends.
Unlike Python 3.X, Python 2.X does not have the 'end' argument.
3. Using "comma" to Terminate Print Statement
In order to print in the same line in Python 2.X, all you have to do is terminate your print statement with a comma.
In the example below, the print statement is terminated with a comma.
Input
# print without a newline but with space # terminate print statement with a comma print ("Good Morning!"), print ("What a wonderful day!")
Output
Good Morning! What a wonderful day!
A space character is used to separate the two lines.
Python Print Without Newline Video Tutorial
Conclusion
With most other programming languages requiring the position of a new line being mentioned in the program, many first time users may find printing with Python a little inconvenient. However, it is actually time-saving as it automatically detects a new line in the output with every print function or statement.
Whenever you need an output printed in the same line, all you need to do is to terminate your print function with the argument 'end' in Python3 or introduce a comma in Python 2.This simple addition will help you get rid of your new line woes!
Source: https://www.stechies.com/python-print-without-newline/
0 Response to "How to Continue in Same Line in Python"
Post a Comment