【问题标题】:Python : list of int to a function waiting for int [duplicate]Python:等待int的函数的int列表[重复]
【发布时间】:2015-05-11 23:10:01
【问题描述】:

我有一个函数 f(a,b,c) 等待 3 个 int。我有一个列表 t = list(1,2,3) 我想输入到 f : f(t)。但它不起作用。最简单的方法是什么。

编辑:t = list('1','2','3')

谢谢

【问题讨论】:

    标签: python list function integer


    【解决方案1】:

    您需要解压缩列表 t 中的值。

     f(*t)
    

    例子:

    >>> def f(a,b,c):
            print(a,b,c)
    
    >>> t = [1,2,3]
    >>> f(*t)
    1 2 3
    

    >>> def f(a,b,c):
            print(a,b,c)
    
    
    >>> t = ['1','2','3']
    >>> f(*map(int,t))
    1 2 3
    

    【讨论】:

    • 如果 a,b,c 是字符串,我想同时将它们更改为整数怎么办?
    • @TheAnswer 检查我的更新..
    • 如果列表只有 2 项(并且 c 没有默认值),代码会中断吗?只是好奇。
    • 是的,因为定义的函数正好需要三个参数。您可以设置 c 的默认值,例如 def f(a,b,c=0):
    【解决方案2】:

    您必须按如下方式传递值:

    f(t[0], t[1], t[2])
    

    【讨论】:

      【解决方案3】:

      你可以这样调用函数:

      f(t[0],t[1],t[2])
      

      干杯!

      【讨论】:

        猜你喜欢
        • 2018-03-18
        • 1970-01-01
        • 2014-03-24
        • 1970-01-01
        • 2015-03-07
        • 2014-04-03
        • 1970-01-01
        • 2015-10-08
        • 2013-05-07
        相关资源
        最近更新 更多