如何在Python中向字符串文字添加函数输出?

时间:2013-05-11 17:48:15

标签: python

我是Python的新手。把它放在那里。

我想要做的是将函数的输出添加到另一个函数输出的字符串文字。

情况就是这样:

**

def prime(n):
    **blahh blah blah....**
    if z == True:
        return " and prime"
    else:
        return ""
def happyPrime(n):
     **more blah blah blah**
            if n == 1:
                print ("Number is happy%s!" % prime)
                break
            if n in visited:
                print ("Number is sad%s!" % prime)
            visited.add(n)

[忽略代码段中的缩进,StackOverflow使它们出错了。] 当然,预期的结果是模数在哪里,它会添加其他函数返回的内容。不过,我想我可能会以错误的方式接近它。

2 个答案:

答案 0 :(得分:1)

下面:

def happyPrime(n):
     **more blah blah blah**
            if n == 1:
                print ("Number is happy%s!"  %  prime(n))
                break
            if n in visited:
                print ("Number is happy%s!"  %  prime(n))
            visited.add(n)

您的prime(n)函数返回一个字符串。因此,%s将替换为返回的字符串。

或者,您可以连接返回的字符串。例如:

>>> def foo(n):
        if n == True:
            return "yay"
        else:
            return "boo"

>>> def happyPrime(n):
        print "bar " + foo(n)

>>> happyPrime(True)
bar yay

>>> happyPrime(False)
bar boo

答案 1 :(得分:0)

不确定你的意思,如果你想让%s返回prime(n)的结果,你必须给出一个参数,因为它需要一个。从它的外观来看,无论是真还是假。

print ("number is happy%s!" % prime(True))