Online Tutorials & Training Materials |
Register Login

Python: How to Print Without Newline or Space?

24 Dec 2018 7:41 am || 0

Python is among the extremely simple computer programming languages that are a favorite among various beginner programmers. It is a general-purpose programming language that comes with a design philosophy of easy readability. With a basic knowledge of programming, anyone can master Python in a matter of a few months.

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!")


Good Morning!
What a wonderful day!

In order to print different outputs in the same line, you have to introduce certain changes in the print command.

The Solution:

Print Without Newline in Following Ways

Printing Without a Newline in Python3

1) Using "end" Argument

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!")


Good Morning!What a wonderful day!

2) Using "sys" Library

#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")


Hey! Welcome to the STechies.We have the best python tutorial

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

Python Print Output with Space

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.


# use the argument "end" to specify the end of line string and print with space

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


Good Morning! What a wonderful day!

Printing Without A Newline In Python2

To print output in Python 2, you have to input print in the form of a statement. However, in this version of Python, every output was printed in the next line.

Unlike Python 3, Python 2 does not have the 'end' argument.

Using "comma" to Terminate Print Statement

In order to print in the same line in Python 2, all you have to do is terminate your print statement with a comma.


# print without a newline but with space
# terminate print statement with a comma

print ("Good Morning!"),
print ("What a wonderful day!")


Good Morning! What a wonderful day!

Python Print Without Newline Video Tutorial


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!