【问题标题】:Returning different types in Python [closed]在 Python 中返回不同的类型 [关闭]
【发布时间】:2013-04-08 15:07:57
【问题描述】:

菜鸟问题,但是: 假设你有一个,等于 90; b,等于 100;你想回来 “90 小于 100” 你如何让它返回(不打印)“90 小于 100”而不是“a 小于 b”

我尝试过使用逗号,但这样做不正确,它返回“(90,”小于“,100)”我猜你必须将a和b转换为字符串?

【问题讨论】:

  • 您的 Q 似乎建议您要返回一个字符串。你还想退货什么?稍后评估的表达式?那将是可能的。 -- 也许一个代码 sn-p 可以说明你尝试了什么。
  • print() 很好,因为它允许您传递多个参数,并将它们转换为字符串并用空格连接它们。您必须自己做同样的事情,或者更好的是,使用字符串格式。
  • 在某种程度上,我什至可以猜测您要问什么,这与您的问题标题无关。我认为您需要先学习更多基础知识。

标签: python string integer return comma


【解决方案1】:
>>> a = 90
>>> b = 100
>>> '{0} is less than {1}'.format(*sorted([a, b]))
'90 is less than 100'

如果你已经知道一个比另一个大,这会简单得多

'{0} is less than {1}'.format(a, b)

在使用.format 时,您不需要将任何变量转换为字符串,这就是它如此棒的原因!

【讨论】:

    【解决方案2】:
    def main():    
        a = 90
        b = 100
        msg = foo(a,b)
        print msg
    
    def foo(a,b):
    
        if a < b:
            msg = "a = %d is less than b = %d " % (a,b)
            return (msg)
        elif a> b:
            msg = "b = %d is less than a = %d " % (b,a)
            return (msg)
        else:
            msg = "a = %d is eual to a = %d " % (a,b)
            return (msg) 
    
    
    if __name__=="__main__": main()
    

    【讨论】:

      【解决方案3】:

      你可以像这样返回一个元组:

      def func():
          # do stuff
          return (90, 'is less than', 100)
      

      然后你可以通过做类似的事情来获得这些

      value1, text, value2 = func()
      

      value1 将等于 90,text 将等于“小于”,最后 value2 将等于 100

      这是一种方法。这是另一个返回字典。

      def func():
          # do stuff
          return {'a': 90,
                  'text': 'is less than',
                  'b': 100}
      

      那么你就可以这样使用了:

      ret = func()
      print ret['a'] # prints 90
      print ret['text'] # prints is less than
      print ret['b'] # prints 100
      

      有很多方法可以做这样的事情。你甚至可以为此创建一个特定的对象。这取决于您希望如何使用您的数据

      【讨论】:

        猜你喜欢
        • 2019-12-29
        • 2019-08-07
        • 1970-01-01
        • 1970-01-01
        • 2021-06-22
        • 1970-01-01
        • 2021-06-30
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多