Why is there no blank space printed when there is a print() after an end function?

print("where is", end = ' ')
print()
print("Blank line")

Why is there no blank space between these two lines of code? From what I have, heard, the print() prints a blank line, so why does having print() after the end function cause there to be no blank space?

I am aware that the end function means that the end character is defined by the last whitespace and not a new line.

Answer

print() works just the way you think it does. However, the preceding line has a print statement that does not end with a newline character; instead it prints a space.

So this what is printed:

where is<space><newline>Blank line'
  • The <space> comes from the first print statement
  • The <newline> comes from the second print statement
  • You already know that Blank line comes from the third print statement