I want to output the following string n times.
" add x0,x0,x0 # placefold \n\t" \
When I use
placeholder=r'" add x0,x0,x0 # placefold \n\t" \'
print(placeholder)
EOL while scanning string literal error occurred. I clearly added r in front of the string, why does this error still occur.
When i use
placeholder=r'" add x0,x0,x0 # placefold \n\t" \ '
print(placeholder)
(I added a space before the'.)
There is no error after running. But I don’t want an extra space at the end.
what should I do? What I want to achieve is:
placeholder=(r'" add x0,x0,x0 # placefold \n\t" \' "\n")*repeat_number
print(placeholder)
Thanks!
CodePudding user response:
You can use string concatentation without the operator, I suggest using this code:
placeholder=r'" add x0,x0,x0 # placefold \n\t" ' '\'
print(placeholder)
Notice, that "ab" is equal to "a" "b" (this works too in C).
CodePudding user response:
If you want placeholder to end with a backslash, consider escaping it:
placeholder = r'" add x0,x0,x0 # placefold \n\t" \\'
print(placeholder)
Results in: " add x0,x0,x0 # placefold \n\t" \\. It looks like there are two backslashes, but there is actually only one. The console prints \\ to notify a single backslash in this case.
Proof:
>>> placeholder[-1]
'\\'
