我正在尝试使用 Jupyter 笔记本打印带有 python 函数的内容。举个例子,假设我想要一个打印 '\x' 的函数,其中 'x' 是函数的参数。def mu(): a="\\" b="mu_" return (a+b)这应该给我 '\mu_' 作为输出。但它给了我 '\\mu_' 作为输出。我首先尝试使用单个“\”,但出现错误。我在堆栈溢出中找到了该问题的答案,它允许使用双反斜杠即“\\”打印单个“\”,但这仅适用于 print() 命令,而不是在函数内部。这在函数内部不起作用。有没有一种方法可以使上述函数按我想要的方式工作,并在输出中得到一个“\”作为“\mu_”?编辑:任何奇数个反斜杠都会发生这种情况。但是当我使用偶数个反斜杠时,我会得到相同的偶数个反斜杠。对于奇数,错误为: File "<ipython-input-25-e1de4609aed4>", line 2a='\\\' ^SyntaxError: EOL while scanning string literal对于上述错误,我a = '\\\'在与上面相同的函数中定义。我希望我能清楚地表达这个问题,如果不能,请在评论中告诉我。PS-请注意,这个问题与这里的其他一些问题不同。问题尤其出在函数内部使用的“return”命令。我刚刚意识到这一点。如果我使用 print(),它会按照我想要的方式工作(之前已在此平台中询问过。)但我想知道是否可以使用函数使其工作。因此,问题的缩小版本与返回命令有关。编辑:对我来说,使用函数解决问题至关重要,因为我需要将这个 '\mu_' 附加到数组中。打印它是不够的。请看下面的代码:def ten(n,r): tiu = [] for i in range(1,n+1): index = str(i) u = 'u^' + '\mu_' + index tiu.append(u) return (tiu)在下一个单元格中我输入:ten(4,1)给出输出:['u^\\mu_1', 'u^\\mu_2', 'u^\\mu_3', 'u^\\mu_4']现在,如果我在函数中使用 2 个“\”,输出不会发生任何变化。但如果我使用 3 个“\”,我会在输出中得到 4 个“\”。
添加回答
举报
0/150
提交
取消