字符串连接发生在python的下一行

时间:2017-06-12 22:12:03

标签: python string python-2.7 string-concatenation

Python使用+运算符进行简单连接。但我观察到一些不同寻常的事情。

我试过了:

final_path = '/home/user/' + path + '/output'

path是一个我想要连接的凝视变量。

print final_path

给了我:

/home/user/path
/output

而不是/home/user/path/output

为什么要进入下一行。 正斜线是否会导致问题。 我也试过使用转义字符。但它不起作用。

4 个答案:

答案 0 :(得分:2)

从代码的外观来看,问题可能是变量path。检查path最后是否有新行。转义字符以反斜杠\开头,而不是正斜杠/

答案 1 :(得分:0)

可能取决于变量路径中包含哪个字符串。如果它以回车符('\ n')结束,这可以解释为什么字符串变量final_path打印在2行上。

问候。

答案 2 :(得分:0)

当路径来自另一个文件(例如您要导入数据的.txt)时,会发生这种情况。我通过添加path.strip()解决了此问题,该方法删除了在生成的换行符str之前和之后的空格。只需将.strip()添加到变量中即可。

答案 3 :(得分:0)

正如胜利者所说,您的路径变量在末尾隐式添加了“ \ n”,因此您可以采取以下技巧来解决该问题:

final_path = '/home/user/' + path.strip('\n') + '/output'