字符串连接发生在 python 中的下一行
String concatenation takes place on the next line in python
Python 使用 +
运算符进行简单的串联。但我观察到一些不寻常的东西。
我试过了:
final_path = '/home/user/' + path + '/output'
其中 path
是我要连接的凝视变量。
print final_path
给我:
/home/user/path
/output
而不是/home/user/path/output
为什么要去下一行。
是正斜杠引起的问题。
我也尝试使用转义字符。但它不起作用。
从您的代码来看,问题可能出在变量 path
上。检查 path
末尾是否有新行。转义字符以反斜杠 \
而非正斜杠 /
.
开头
也许这取决于变量路径中包含哪个字符串。如果它以回车 return ('\n') 结尾,这可以解释为什么字符串变量 final_path 打印在 2 行上。
此致。
当路径来自您导入数据的另一个文件(例如 .txt)时会发生这种情况。我通过添加 path.strip() 解决了这个问题,它删除了正在生成的换行符之前和之后的空格。只需将 .strip() 添加到您的变量中即可。
正如victor所说,你的路径变量在末尾隐式添加了'\n',所以你可以做这样的技巧来克服这个问题:
final_path = '/home/user/' + path.strip('\n') + '/output'
Python 使用 +
运算符进行简单的串联。但我观察到一些不寻常的东西。
我试过了:
final_path = '/home/user/' + path + '/output'
其中 path
是我要连接的凝视变量。
print final_path
给我:
/home/user/path
/output
而不是/home/user/path/output
为什么要去下一行。 是正斜杠引起的问题。 我也尝试使用转义字符。但它不起作用。
从您的代码来看,问题可能出在变量 path
上。检查 path
末尾是否有新行。转义字符以反斜杠 \
而非正斜杠 /
.
也许这取决于变量路径中包含哪个字符串。如果它以回车 return ('\n') 结尾,这可以解释为什么字符串变量 final_path 打印在 2 行上。
此致。
当路径来自您导入数据的另一个文件(例如 .txt)时会发生这种情况。我通过添加 path.strip() 解决了这个问题,它删除了正在生成的换行符之前和之后的空格。只需将 .strip() 添加到您的变量中即可。
正如victor所说,你的路径变量在末尾隐式添加了'\n',所以你可以做这样的技巧来克服这个问题:
final_path = '/home/user/' + path.strip('\n') + '/output'