标签: arguments

有没有一种优雅的方法将参数从 function1() 传递到需要多个参数的 function2() ?

我有以下情况:

def func1(a = 0, b = 0):
    return a + b**2

def func2(x):
    if x == 'a':
        return func1(a = 2)
    elif x == 'b':
        return func2(b = 2)

print(func2('a'))
Run Code Online (Sandbox Code Playgroud)

有没有一种方法可以a不作为字符串传递并摆脱 if 语句?

python arguments if-statement function

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

Python - 排序预期 1 个参数,得到 3 个 - 尝试理解命名参数

sorted()我正在通过以下小示例研究Python 3.9 中的函数

circus = [('a', 'b', 'c', 'd', 'e'),('w', 'x', 'y', 'z', 'a'),('k', 'l', 'm', 'n', 'o'),('u', 'v', 'w', 'x', 'y'),('q', 'r', 's', 't', 'u'),('e', 'f', 'g', 'h', 'i')]
Run Code Online (Sandbox Code Playgroud)

这只是一个五元组列表,我想按第五个元素(即 e、a、o、y、u、i)排序

我知道正确的方法是

sorted(circus, key = lambda d: d[4], reverse = True)
Run Code Online (Sandbox Code Playgroud)

但我正在尝试这个

sorted(circus, lambda z: z[4], True)
Run Code Online (Sandbox Code Playgroud)

并得到错误

TypeError: sorted expected 1 argument, got 3
Run Code Online (Sandbox Code Playgroud)

我试图理解为什么它需要 1 个参数。根据文档(https://www.w3schools.com/python/ref_func_sorted.asp),另外两个是可选参数,但它们仍然应该是预期的,对吗?

python arguments

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

为什么将 4 元素数组传递给 C 中的函数时会出现警告?

如果有一个大小为 4 的数组,则将该数组的值发送给函数。为什么会出现警告?

#include <stdio.h>
#include <stdbool.h>

void greatestOf(int arr[], int *result) {
    *result = arr[0];

    for (int i = 1; i < 4; i++) {
        if (arr[i] > *result) {
            *result = arr[i];
        }
    }
}


int main() {
    int arr[4], x;
    printf("Input : ");
    scanf("%d %d %d %d", &arr[0], &arr[1], &arr[2], &arr[3]);

    greatestOf(arr[4], &x); // here warning text. When I try to use '''greatest(arr, &x)'''

    printf("Greatest number: %d\n", x);

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

我收到以下警告消息:

#include <stdio.h>
#include <stdbool.h>

void …
Run Code Online (Sandbox Code Playgroud)

c arrays arguments function function-call

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

在c ++中更改参数值

为什么在for循环中更改参数会导致程序崩溃?它对c ++来说太动态了吗?

for(unsigned int x = 0; x < mystring.size(); x++)
    mystring = mystring.substr(0, mystring.size());
Run Code Online (Sandbox Code Playgroud)

当我改变我的真实代码来执行此操作(mystring.size()> 0)时,我的程序仍然崩溃

编辑:

好.你们是对的,由于mystring值的变化,代码没有崩溃.但是,这段代码很简单,我没看到错误来自哪里:

template <class Algorithm>
class ECB{  // Electronic codebook
  private:
    Algorithm algo;
    uint8_t blocksize;

  public:
    ECB(Algorithm instance, std::string = "")
      : algo(instance) {
        blocksize = algo.blocksize() >> 3;
      }

    std::string encrypt(std::string data){
        data = pkcs5(data, blocksize);

        return data;
    }

    std::string decrypt(std::string data){

        return remove_padding(data);
    }
};
Run Code Online (Sandbox Code Playgroud)

请不要链接我到网站教我如何使用ECB.它不像它的硬.但是,这段代码很烦人

c++ arguments for-loop dynamic

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

将方法的参数传递给另一个方法?

我有以下代码:

public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args) {
    // Do stuff
}
Run Code Online (Sandbox Code Playgroud)

我希望能够这样做:

public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args) {
    someMethod(sameParameters);
}
Run Code Online (Sandbox Code Playgroud)

我该怎么做呢?你能提供一个例子吗?

java parameters methods multithreading arguments

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

为什么人们在Java中留下未使用的`String args []`?

当我看到Java程序时,String args[]即使程序不使用它们,许多人也会继续使用它们.为什么是这样?有什么特别的吗?

java arguments command-line-arguments

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

使用Lua运行另一个二进制文件/ exe文件?

快速问题,lua代码将运行带参数的binary/exe文件

提前致谢.

binary lua arguments exe

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

为Python类成员分配默认参数

我试图从一个字典中实例化一个类.在类构造函数中,如果没有给出,我将默认值分配给某些类成员:

class Country(object):
    def __init__(self, continent, country = "Zimbabwe"):
        # do stuff
Run Code Online (Sandbox Code Playgroud)

我实例化的字典具有与我的类成员同名的键.我像这样从dict中实例化:

country = Country(
    continent = dictionary["continent"],
    country   = default_value if "country" not in dictionary else    dictionary["country"]
)
Run Code Online (Sandbox Code Playgroud)

可以看出,字典可能没有与类名对应的密钥.在这种情况下,如果密钥"country"不存在,我希望将类成员国保留为其默认值,即"津巴布韦".有一种优雅的方式来做到这一点?以某种方式的东西:

country = dictionary["country"] if "country" in dictionary else pass
Run Code Online (Sandbox Code Playgroud)

然而,这是不可能的.我知道我可以将默认值的字典作为Country类的静态成员,并且这样做:

country = Country.default_values["country"] if "country" not in dictionary else dictionary["country"]
Run Code Online (Sandbox Code Playgroud)

但这似乎有点矫枉过正.有更好的方法吗?

python arguments

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

Bash:如何使用\ t等特殊字符传递参数

我有一个问题,如何\t在Bash中传递带有特殊字符的参数.

我知道以下内容以保留引号:

function my_grep {
    cmd="grep '$@'"
    eval $cmd;
}
Run Code Online (Sandbox Code Playgroud)

这样我才能做到my_grep "hello world".

但似乎我不能以这种方式保存,例如

my_grep "hello\tworld"
Run Code Online (Sandbox Code Playgroud)

关于如何使这项工作的任何想法?

bash shell arguments

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

C - format指定类型int但参数的类型为long

我找不到如何修复这个练习:它是关于学习字符计数(我正在使用Kernighan-Ritchie版本).我的问题栏说:

"warning:format指定类型'int'但参数的类型为'long'[ - Wformat] printf("%1d \n",nc); ~~~ ^〜%1ld"

这是代码:

    #include <stdio.h>

int main()
{
    long nc;

    nc = 0;
    while (getchar() != EOF)
        ++nc;
    printf("%1d\n", nc);
}
Run Code Online (Sandbox Code Playgroud)

我在Mac上使用Qt Creator 3.1.1.Xcode版本6.2(6C131e)上的相同问题.

有帮助吗?提前致谢.

c types arguments long-integer

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