[New-bugs-announce] [issue31906] String literals next to each other does not cause error

Sam Lobel report at bugs.python.org
Mon Oct 30 17:30:45 EDT 2017


New submission from Sam Lobel <slobel at lexile.com>:

This seems too obvious to have been missed, but also too strange behaviour to be on purpose.

The following works for some reason (note there's no + between the words)
>>> variable = "first" "second"
>>> print(variable)
"firstsecond"

In a file, if you're missing a comma between two string literals, it combines them into one string (instead of throwing a syntax error). E.G:

>>> a = ["first",
... "second"
... "third"]
>>> print(a)
["first" "secondthird"]

BUT, the same thing with variables (thankfully) does not work.
>>> a = "first"
>>> b = "second"
>>> c = a b
Throws a syntax error.

The same sort of thing also breaks for integers.
>>> a = 4 7
throws a syntax error.

This just seems wrong to me. Is it? Has this been discussed a million times before?

----------
messages: 305252
nosy: Sam Lobel2
priority: normal
severity: normal
status: open
title: String literals next to each other does not cause error
versions: Python 2.7, Python 3.4, Python 3.5, Python 3.6

_______________________________________
Python tracker <report at bugs.python.org>
<https://bugs.python.org/issue31906>
_______________________________________


More information about the New-bugs-announce mailing list