Ok I've search for this one for quite some time but have not been able to resolve this issue. I am sure that this issue lies with input().
networkPath = input("Drop Path: ")
print("test") # <- will never get here
SyntaxError: unexpected character after line continuation character
Also, if the user puts their input in quotes this error does not occur. Such as seen here: syntaxerror: unexpected character after line continuation character in python
I do not want the user to have to wrap their input in quotes. The reasoning is that they will be putting in long network paths such as: \oursite.com\someplace\global\Communications\News\Sitemap
Now I know you are thinking, "why can't they just wrap in quotes?" The reasoning is that they would be copying and pasting that network path from a generated email.
Thanks in advance!
Edit: I should note that this fails in windows command line and not in pyscripter
The root problem here is almost certainly that you're learning Python 3, but trying to use a Python 2.7 interpreter to do it. Don't do that. Go download Python 3.3 or later and use that.
But if you're actually intentionally trying to use Python 2.7, read on:
You're right. As the documentation says,
input
is:In other words, whatever the user types in gets passed to
eval
. Which means it's being evaluated as Python code. And, unless the user happens to type something that's valid Python code (like a string in quotes), you will get aSyntaxError
.The solution here is simple: Don't use
input
, useraw_input
.(Note that Python 3's
input
is the same as Python 2'sraw_input
, and it doesn't have any equivalent to Python 2'sinput
. This is why I believe you're using the wrong Python version.)Don't use input() for this; use raw_input(). Input() calls eval() on the read-in text, which you neither need or want , and which is responsible for this error.