python – Pythonic way to create a long multi-line string
python – Pythonic way to create a long multi-line string
Are you talking about multi-line strings? Easy, use triple quotes to start and end them.
s = this is a very
long string if I had the
energy to type more and more ...
You can use single quotes too (3 of them of course at start and end) and treat the resulting string s
just like any other string.
NOTE: Just as with any string, anything between the starting and ending quotes becomes part of the string, so this example has a leading blank (as pointed out by @root45). This string will also contain both blanks and newlines.
I.e.,:
this is a veryn long string if I had then energy to type more and more ...
Finally, one can also construct long lines in Python like this:
s = (this is a very
long string too
for sure ...
)
which will not include any extra blanks or newlines (this is a deliberate example showing what the effect of skipping blanks will result in):
this is a verylong string toofor sure ...
No commas required, simply place the strings to be joined together into a pair of parenthesis and be sure to account for any needed blanks and newlines.
If you dont want a multiline string, but just have a long single line string, you can use parentheses. Just make sure you dont include commas between the string segments (then it will be a tuple).
query = (SELECT action.descr as action,
role.id as role_id,
role.descr as role
FROM
public.role_action_def,
public.role,
public.record_def,
public.action
WHERE role.id = role_action_def.role_id AND
record_def.id = role_action_def.def_id AND
action.id = role_action_def.action_id AND
role_action_def.account_id = +account_id+ AND
record_def.account_id=+account_id+ AND
def_id=+def_id)
In a SQL statement like what youre constructing, multiline strings would also be fine. But if the extra white space a multiline string would contain would be a problem, then this would be a good way to achieve what you want.
As noted in the comments, concatenating SQL queries in this way is a SQL injection security risk waiting to happen, so use your databases parameterized queries feature to prevent this. However, Im leaving the answer as-is otherwise as it directly answers the question asked.
python – Pythonic way to create a long multi-line string
python – Pythonic way to create a long multi-line string
Breaking lines by works for me. Here is an example:
longStr = This is a very long string
that I wrote to help somebody
who had a question about
writing long strings in Python