相关疑难解决方法(0)

使用*args和**kwargs

所以我有这个概念的困难*args**kwargs.

到目前为止,我已经了解到:

  • *args =参数列表 - 作为位置参数
  • **kwargs = dictionary - 其键成为单独的关键字参数,值成为这些参数的值.

我不明白这会对哪些编程任务有所帮助.

也许:

我想输入列表和字典作为函数AND的参数同时作为通配符,所以我可以传递任何参数?

有一个简单的例子来说明如何*args**kwargs使用?

我发现的教程也使用了"*"和变量名.

*args**kwargs刚才占位符或者你使用完全相同*args,并**kwargs在代码中?

python args kwargs

1367
推荐指数
10
解决办法
84万
查看次数

python*运算符的专有名称?

运营商的正确名称是什么*,如function(*args)?解压缩,解压缩,其他什么?

python operators splat

200
推荐指数
6
解决办法
10万
查看次数

在python中使用动态参数列表调用函数

我需要调用一个函数来处理可以有默认值的参数列表:

示例代码:

web.input(name=None, age=None, desc=None, alert=None, country=None, lang=None)
Run Code Online (Sandbox Code Playgroud)

如何使用列表或字典调用web.input?我坚持:

getattr(web, 'input').__call__()
Run Code Online (Sandbox Code Playgroud)

python web.py

7
推荐指数
3
解决办法
6951
查看次数

将列表传递给python中具有可变数量args的函数

我必须编写一个简单的函数,它接受可变数量的参数并打印总和,就像(忽略错误检查)一样简单:

def add(*params):
    sum = 0
    for num in params:
        sum += num
    print(sum)
Run Code Online (Sandbox Code Playgroud)

我必须调用脚本并为其提供参数,然后将在函数中使用这些参数。我得到这样的论点:

import sys
sys.argv[1:]
Run Code Online (Sandbox Code Playgroud)

但这是一个数组并将其发送到add仅意味着传递 1 个列表参数。我是 Python 新手,所以也许所有这些听起来都很愚蠢,但是有没有办法将这些参数正确地传递给函数?

python

5
推荐指数
1
解决办法
7690
查看次数

为变量分配列表

我有一个python列表:

x = ['aa', 'bb', 'cc']
Run Code Online (Sandbox Code Playgroud)

此列表的len()(或列表长度,在本例中为3)可以是任何数字,因为它基本上来自数据库.我的问题是:如何自动将此列表的每个字符串成员分配到一个单独的变量中?这里的要点是:我不知道列表中的元素数量,因为它们总是不同的.

一旦解决了这个问题,我就试着把它放到Python Google Charting(GChartWrapper的pie3d图表)函数中,如下所示:

G.label(aa,bb,cc)
Run Code Online (Sandbox Code Playgroud)

但是,如果我只是将列表放入:

G.label(x)
Run Code Online (Sandbox Code Playgroud)

然后它只将饼图的一个部分命名为完整列表.

需要帮忙!

python google-chartwrapper

2
推荐指数
1
解决办法
569
查看次数

在多字串的空格之间添加一个字符

我正在尝试制作一个函数,它接受不确定数量的参数,即单词,它将在单个单词之间添加一个“+”。最后它应该仍然是一个字符串。

def add_words(word1 word2 word3 ...)
Run Code Online (Sandbox Code Playgroud)

输出:

"word1+word2+word3 ...")
Run Code Online (Sandbox Code Playgroud)

python

2
推荐指数
1
解决办法
40
查看次数

(ctypes.c_int*len(x))(*x)有什么作用?

我正在使用pyOpenGL,Op​​enGL要求我通过传递指针和要传输的字节数来传输数据.

我知道python不像c那样在内存中存储变量.我找到了以下代码使我的程序工作:

x = [1, 2, ... ]              # some list
(ctypes.c_int * len(x))(*x)
Run Code Online (Sandbox Code Playgroud)

但是我不知道它为什么会起作用(而且我不只是想要相信我不仅因为一切都落入记忆中而感到幸运).这段代码到底在做什么?

python ctypes

1
推荐指数
1
解决办法
331
查看次数

使用具有多个结果的函数作为参数

我有一个返回多个值的函数,我能以某种方式直接在另一个函数的参数列表中使用该函数吗?当我尝试(天真地)时,我得到:

def one() :
    return 3, 2
def two(a, b):
    return a + b
two(one())
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-86-27980b86a2c0> in <module>()
  3 def two(a, b):
  4     return a + b
----> 5 two(one())

TypeError: two() missing 1 required positional argument: 'b'
Run Code Online (Sandbox Code Playgroud)

当然我可以做点什么

def one() :
    return 3, 2
def two(a, b):
    return a + b
a, b = one()
two(a, b)
Run Code Online (Sandbox Code Playgroud)

python function parameter-passing

1
推荐指数
1
解决办法
52
查看次数

Python:等待int的函数的int列表

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

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

谢谢

python integer function list

0
推荐指数
1
解决办法
50
查看次数