Print empty line?

2020-02-23 07:20发布

I am following a beginners tutorial on Python, there is a small exercise where I have to add an extra function call and print a line between verses, this works fine if I print an empty line in between function calls but if I add an empty print line to the end of my happyBirthday() I get an indent error, without the added print line all works fine though, any suggestions as to why?

Here is the code:

def happyBirthday(person):
    print("Happy Birthday to you!")
    print("Happy Birthday to you!")
    print("Happy Birthday, dear " + person + ".")
    print("Happy Birthday to you!")
    print("\n") #error line

happyBirthday('Emily')
happyBirthday('Andre')
happyBirthday('Maria')

6条回答
你好瞎i
2楼-- · 2020-02-23 07:22

You can just do

print()

to get an empty line.

查看更多
家丑人穷心不美
3楼-- · 2020-02-23 07:31

Don't do

print("\n")

on the last line. It will give you 2 empty lines.

查看更多
Ridiculous、
4楼-- · 2020-02-23 07:36

Python's print function adds a newline character to its input. If you give it no input it will just print a newline character

print()

Will print an empty line. If you want to have an extra line after some text you're printing, you can a newline to your text

my_str = "hello world"
print(my_str + "\n")

If you're doing this a lot, you can also tell print to add 2 newlines instead of just one by changing the end= parameter (by default end="\n")

print("hello world", end="\n\n")

But you probably don't need this last method, the two before are much clearer.

查看更多
beautiful°
5楼-- · 2020-02-23 07:38

You will always only get an indent error if there is actually an indent error. Double check that your final line is indented the same was as the other lines -- either with spaces or with tabs. Most likely, some of the lines had spaces (or tabs) and the other line had tabs (or spaces).

Trust in the error message -- if it says something specific, assume it to be true and figure out why.

查看更多
女痞
6楼-- · 2020-02-23 07:44

Python 2.x: Prints a newline

print      

Python 3.x: You must call the function

print() 

Source: https://docs.python.org/3.0/whatsnew/3.0.html

查看更多
叼着烟拽天下
7楼-- · 2020-02-23 07:46

The two common to print a blank line in Python-

  1. The old school way:

    print "hello\n"

  2. Writing the word print alone would do that:

    print "hello"

    print

查看更多
登录 后发表回答