Home Python How to print a newline in Python

How to print a newline in Python

In Python, the new line character indicates a line’s end and a new one’s start. If you wish to print output to the console and work with files, you’ll need to know how to use it.

This article will teach you how to:

  • Find the new line character?
  • In strings and print statements, how to use the new line character.
  • How to write print statements that don’t conclude the string with a new line character.

The character of the new line

Python’s new line character is made up of the following two characters:

  • A backslash.
  • The letter n.

If you encounter this character in a string, it implies the current line has ended, and a new line has begun immediately after it:

"Code\nUnderscored!"

This character is also be used in f-strings:

print(f"Code\nUnderscored!")

Using the New Line Character in Print Statements

By default, print statements append a new line character to the end of the string “behind the scenes.” As an example:

print("Code, Underscored!")

Because the end argument of the built-in print function is set to \n, the string is appended with a new line character. This is how the function is defined:

print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False)

Because the end has the value\ n, it will be appended to the end of the string. You won’t notice this if you use one print statement because only one line will be printed:

print("Code, Underscored!")

In a Python script, however, if you use numerous print statements in a row:

print("Code, Underscored!")
print("Code, Underscored!")
print("Code, Underscored!")
print("Code, Underscored!")

Because \n is added “behind the scenes” to the end of each line, the output is printed in separate lines.

Using the sys module in Python

Another option for printing without a newline in Python is to utilize the built-in module sys. Here’s a working example of using the sys module to output Python strings without newlines. To interact with the sys module, first, use the import keyword to import the sys module. Then, to print your strings, use the sys module’s stdout.write() method.

import sys

sys.stdout.write("Code Underscored ")
sys.stdout.write("Welcome to CodeUnderscored!")

To print a list without a newline, use print()

Consider the following list of items: comp_companies = [“Google”, “UBER”, “Apple”, “Microsoft”, “IBM”] and you want to use a for-loop to print the values within the list. So, as illustrated in the example below, you can use print() to display the values within the list:

comp_companies = ["Google", "UBER", "Apple", "Microsoft", "IBM"]
for val in comp_companies:
	print(val)

The list elements are printed one after the other on a new line in the output. What if you want the list’s items to be on the same line? To accomplish this, use the end option in print(), which causes Python to remove a new line and print all items in the list on the same line.

comp_companies = ["Google", "UBER", "Apple", "Microsoft", "IBM"]
for val in comp_companies:
	print(val, end=" ")

How to Print Without Adding a New Line to Your Document

We can override this default behavior by changing the value of the print function’s end parameter. In this case, we’ll utilize the default value:

print("Code")
print("Underscored!")

However, if we change the value of the end to “, “we will get the desired result. Instead of the new line character \n, a space will be appended to the end of the string, resulting in the output of the two print statements being printed on the same line:

print("Code", end="")
print("Underscored")

It is used to print a series of values in a single line, like in this example:

for i in range(11):
	if i < 9:
		print(i, end=", ")
	else:
		print(i)

We use a conditional statement to ensure the comma is not appended to the sequence’s last number. It is also used to print the values of an iterable in the same line:

data =[21,22,23,24,25]

for num in range(len(data)):
	print(num, end="")

In files, the new line character is used.

The new line character (\n) is also present in files but is “hidden.” Further, (\n), the new line character has been inserted when you notice a new line in a text file. You may verify this by using the command to read the <file>.readlines(), for example:

with open("names.txt", "r") as f:
    print(f.readlines())

The starting three lines of the given text file conclude with a new line n character, which operates “behind the scenes,” as you can see.

Note that the file’s last line is the only one that does not conclude with a new line character.

Printing a newline inside the list of items

Create a python file with the following script to print each list value on a line using the for loop and the newline character to unite the list elements (\n). The script declares a list of three components, and the values of this list are printed using the for loop and the join() method.

# Make a list of all the employees' names.
list_of_employees = ['Joy', 'Green', 'Bright','Esther']
# Print the list items
print("The initial list of values:\n", list_of_employees)

# Each item on the list is printed in a separate line.
print("\nThe list values by using loop:")
for val in list_of_employees:
print(val)

# To make a string, join list elements with newlines.
output = '\n '.join(list_of_employees)
print("\nBy using the newline command, you can create a newline in the list of values.  join() function:\n", output)

Printing a newline inside the dictionary items

Create a python file containing the following script to use the for loop to output each key and value of a dictionary in a line. The join() function is then used to print each key and value of the dictionary in a separate line.

# Definition of employees's dictionary
dic_employees = {"ID": "09785", "Name": "Kamrul Hasan", "Batch": "10", "Semester": "6"}
# Print the employees dictionary items
print("The original dictionary items:\n", dic_employees)

# With a line break, print each dictionary key and value.
print("\nThe dictionary keys and values with newline:")
for key, value in dic_employees.items():
print("{} : {}".format(key, value))

# Create string by joining dictionary keys with newline
output = '\n '.join(dic_employees.keys())
print("\nThe dictionary keys with newline by using join() function:\n", output)

# Creation of the string through joining dictionary values with newline
output = '\n '.join(dic_employees.values())
print("\nThe dictionary values with newline by using join() function:\n", output)

Printing the newline within the string values

A common task of a python script is to insert a new line within the string value. To learn how to add new lines to different regions of a string value, create a python file containing the following script.

The newline character (\n) has been utilized in the middle of the single-quoted string value in the string1 variable. The newline character (\n) has been used twice in the middle of the double-quoted string value in the string2 variable. Also, the newline character (\n) has been utilized in the middle of the triple single-quoted string value in the string3 variable. Further, the newline character (\n) has been utilized in the middle of the triple double-quoted string value in the string4 variable. In addition, the newline character (\n) variable has been used inside the formatted string in the string5 variable.

# Definition of a string using single quotes

first_string = 'Code to\n Underscored'

print("The initial newline output string:\n", first_string)

# Definition of a string using double quotes

second_string = "Coding\n in\n Python"

print("\nThe Subsequent newline string output is:\n", second_string)

# Definition of a string using three single quotes

third_string = '''Python is a \n interpreted language.'''

print("\nThe third String newline output is:\n", third_string)

# Define string with three double quotes without newline(\n)

fourth_string = """Coding

in the

Python

language is enjoyable"""

print("\nThe fourth  string newline output:\n", fourth_string)

# Assigning a  newline(\n) character into a given variable

nl = '\n'

# Using the variable in the  specified string

fifth_string = f"Learning{nl} Python is enjoyable."

print("\nThe fifth newline string output:\n", fifth_string)

Conclusion

In Python, \n is the new line character. It’s used to mark the end of a text line. With end = <character>, which is the <character> used to divide the lines, you can print strings without adding a new line. In Python, the new line character is now available for use.

You may also like

Leave a Comment