Python从函数返回的新行

时间:2015-11-04 13:44:22

标签: python function return line

我是python的新手,遇到了以下问题。我试图从函数中获取两行使用return的文本,但仍然得到" \ n"作为文本(在IDLE 3.5中)。当我改变"返回"到"打印",但我需要"返回"。

def myfunc(a):
    text1=["|"]
    i=int(a)
    mystr="abc|"*i+"\n"
    text1.append(mystr)
    text1=''.join(text1)
    b="0"
    text2=[b]
    for b in range(i):
        b+=1
        text2.append("{0:5d}".format(b))
    text1="".join((text1,"".join(text2)))
    return(text1)

结果:

>>> myfunc(4)
'|abc|abc|abc|abc|\n0    1    2    3    4'

(...)
print(text1)
>>> myfunc(4)
abc|abc|abc|abc|
0    1    2    3    4

1 个答案:

答案 0 :(得分:2)

当输入在交互式解释器中返回字符串的表达式时,将显示该字符串的表示。这与打印字符串不同,后者会将字符串本身的字符直接写入终端。

该表示通常会尝试以Python将接受的格式显示字符串作为字符串文字,即它用引号括起来,并且特殊字符被转义,就像您在\n中看到的那样。