在Python中更改函数参数名称

在Python中更改函数参数名称,python,function,Python,Function,我有一个函数,它接受一个参数 getStats(countries=['France','Spain','Italy','US']) 我想重复使用完全相同的函数,但我想将名称参数countries更改为regions getStats(regions=['New York','Boston','San Francisco']) 好的方法是什么?这是一个装饰器案例吗?函数如何知道在默认案例中使用哪个列表getStats()?假设您的函数对国家和地区的作用完全相同,并且您希望为这两个国家和地区提

我有一个函数,它接受一个参数

getStats(countries=['France','Spain','Italy','US'])
我想重复使用完全相同的函数,但我想将名称参数countries更改为regions

getStats(regions=['New York','Boston','San Francisco'])

好的方法是什么?这是一个装饰器案例吗?

函数如何知道在默认案例中使用哪个列表
getStats()
?假设您的函数对国家和地区的作用完全相同,并且您希望为这两个国家和地区提供默认值,那么将它们列在用户可以应用的函数之外。如前所述,参数名可能更加模糊
getStats(location)
,并且需要一个列表,但用户可以使用方便的默认名称

countries = ['France','Spain','Italy','US']
regions = ['New York','Boston','San Francisco'])

def getStats(location):
    """Get stats for location. Default `countries` and `regions` lists
    available."""
    ....
或者,如果愿意,可以定义多个调用公共函数的函数

def getStatsByCountry(countries=['France','Spain','Italy','US']):
    return getStats(countries)

def getStatsByRegion(regions=['New York','Boston','San Francisco']):
    return getStats(regions)

.简单地重命名参数怎么样?可能是更广泛的,比如
位置
?或者您不能编辑该函数?并且不要使用列表作为默认参数:
countries
/
regions
是该函数的唯一参数吗?@khelwood,事实上有不止一个参数getStats(countries=['France'、'sipan'、'意大利人'、'US'],type=type=which=['l1','l2','l3',output='pandas'))使用地理位置而不是国家和地区是一个好主意。