Python Print Without Newline [How to, Examples, Tutorial]

Problem

In Python programming language, by default print statement adds a newline character. So when we have multiple print statements the output from each of them is printed in multiple lines as you can see in the example below. Our goal is to print them in a single line or python print without newline and use some special parameters to the print function to achieve that.

Python print() function

To print the data, we use the print function. It is very easy to use. Let’s have a look at one example of the print function.

print("first line")
print("second line")
print"third line")

The output is:

first line
seconde line
third line

We have to pass the data that we wish to print in the print function. It is this easy to print data in python. But observe the output of the above python code. We used three print functions and each value is printed in a different line. There is no problem with it but sometimes we want that data should be printed on the same line.

However, In some cases, we may want to output multiple strings on the same line using separate print statements. There are a few ways to prevent Python from adding the newline character when using the print function, depending on whether we are using Python 2.x or Python 3.x.

Python print without newline in Python3

In Python 3, print() is a function that prints output on different lines, every time you use the function. Python 3 provides the simplest solution, all you have to do is to provide one extra argument to the print function.

# use the argument "end" to specify the end of line string

print("Good Morning!", end = '')
print("Have a wonderful day!")

Output

Good Morning!Have a wonderful day!

Explanation Using end Parameter

Here we are using the end parameter to use a specific character at the end of the output from each print statement. In the above example, we used “,” as a special character with the end parameter, which will appear at the end of the output of each print statement. The result will not be printed in multiple lines.

Must Read: Python Null

Python print without newline in Python2

Unlike Python 3, Python 2 does not have the ‘end’ function. For the python version 2.0 and above, we have to use a different approach. Instead of using the end keyword, We can simply separate the print function by a comma to print without a newline.

# no newlines but a space will be printed out
print "Hello World!",
print "This is Daniel from Python Pool"

Output:

Hello World! This is Daliel from Python Pool

As you can see, even though there were no newlines, we still got a space character between the two print statements.

Python print without newline using the inbuilt library

To print without a newline in python, there is another method. In this, you can use the powerful sys.stdout.write a function from the sys module.

The Benefits of using inbuilt-library are:

  • The function will only print whatever you explicitly tell it to print.
  • There are no terminating strings.
#Import the inbuilt sys library
import sys
#First Line of output
sys.stdout.write("Hey! Welcome to Python Pool.")
#Second Line of output
sys.stdout.write("We have the best python tutorials")

Output:

Hey! Welcome to Python Pool.We have the best python tutorials

Note: The output of both the example above will be in one line without adding space in between the strings.

python print without a newline

Conclusion

For Python print without newline In Python 3, you can use the named end argument in the print function and assign an empty string to this argument to prevent the terminating newline.

For Python print without newline In Python 2, you can either use a comma after your print statement if you don’t mind the space.

or you can just use the sys.stdout.write() function.

If you didn’t find what you were looking, then do suggest us in the comments below. We will be more than happy to add that.

Team Python Pool
0 0 vote
Article Rating
Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments