python局部变量()和循环

python局部变量()和循环,python,Python,我正在尝试做一些非常简单的事情,我不知道为什么我不能解决这个问题 我有两个参数,我只想通过使用循环将它们都放入一个列表中,我使用循环的原因是,有一天函数可能需要很多sys.argv而不是局部变量,我的意思是: def function(arg1, arg2): list = [] for i in range(len(locals())): list.append(locals()[i]) function(1,2) 如果你明白我的意思,你能给我一个解决这个问题

我正在尝试做一些非常简单的事情,我不知道为什么我不能解决这个问题

我有两个参数,我只想通过使用循环将它们都放入一个列表中,我使用循环的原因是,有一天函数可能需要很多sys.argv而不是局部变量,我的意思是:

def function(arg1, arg2):
    list = []
    for i in range(len(locals())):
        list.append(locals()[i])
function(1,2)
如果你明白我的意思,你能给我一个解决这个问题的方法吗?谢谢

locals()
是一个命令,只需使用
.values()
即可获得所有包含的值:

list = locals().values()
但是,如果您的函数将来将使用
sys.argv
,请让您的函数改用位置参数:

def func(*args):
    # args is a list of arguments
    print args

func(1, 2)
locals()
是一个dict,只需使用
.values()
获取所有包含的值:

list = locals().values()
但是,如果您的函数将来将使用
sys.argv
,请让您的函数改用位置参数:

def func(*args):
    # args is a list of arguments
    print args

func(1, 2)

您是否需要使用
locals()
sys.argv
获取值?如果您正在解析命令行参数,可以查看
argparse

是否有理由使用
locals()
sys.argv
获取值?如果您正在解析命令行参数,可以查看
argparse