【问题标题】:How do I call two functions on the same line in third function?如何在第三个函数的同一行调用两个函数?
【发布时间】:2018-01-29 22:27:16
【问题描述】:
def star():

    print("***")

def slash():

    print("///")

def main():

    print(star(), slash())

main()

我想打印"***///" but 我无法在同一行打印它们而不会出错。

【问题讨论】:

标签: python function printing call


【解决方案1】:

您的函数 star()slash() 调用 print() 并且它们不返回任何值。但是您的函数main() 正在尝试打印它们返回的值。您需要下定决心控制印刷的位置。而且它可能不应该在star()slash() 中,因为您想控制输出是否在一行上,而这些函数无法判断一行上还有什么。你可以这样做:

def star():
    return "***"

def slash():
    return "///"

def main():
    print(star(), slash())

main()

【讨论】:

    【解决方案2】:

    你真正想要的是:

    def star():
        return "***"
    
    def slash():
        return "///"
    
    def main():
        print(star(), slash(), sep='')
    
    main()
    

    您需要返回要打印的字符串。否则,你会得到:

    ***
    ///
    None None
    

    【讨论】:

      【解决方案3】:

      你不会运行print(print('value')),但这就是你在这里所做的。相反,您应该说您想要调用第一个值的函数,而第二个具有另一个值的函数。然后你可以简单地把它们加在一起。

      您可以使用return 语句并创建一个变量。

      例如:

      def star():
      
          return "***"
      
      def slash():
      
          return "///"
      
      def main():
      
         a = star() + slash()
         print(a)
      
      
      main()
      

      您可以阅读他们的相关信息here

      【讨论】:

        【解决方案4】:

        试试这个

        def star():
        
                print("***", end = "")
        
            def slash():
        
                print("///")
        
            def main():
        
                print(star(), slash())
        
            main()
        

        【讨论】:

        • 这不是他要求的,这会在最后输出None None
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2022-11-19
        • 1970-01-01
        • 1970-01-01
        • 2020-02-07
        • 1970-01-01
        • 2021-09-29
        相关资源
        最近更新 更多