首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >python动态值转换为relativedelta函数

python动态值转换为relativedelta函数
EN

Stack Overflow用户
提问于 2020-04-20 01:06:31
回答 1查看 231关注 0票数 0

我试图提供动态值给relativedelta函数,也就是relativedelta(days=1),我想把动态函数值daysmonthsyears赋给函数。考虑我的情况如下。我将按如下方式动态获取列表:

代码语言:javascript
复制
Ex: 1

list = ['today', 'minus', '1', 'days']

Ex: 2

list = ['today', 'plus', '1', 'year']

Ex: 3

list = ['today', 'plus', '1', 'months']

我编写了处理计算的代码。

代码语言:javascript
复制
import operator
from datetime import datetime
from datetime import date
from dateutil.relativedelta import relativedelta

operations = {
        'plus': operator.add,
        'minus': operator.sub,
    }
today = date.today()
new_date = self.operations['plus'](today, relativedelta(days=1))

# the above is some thing like [today + relativedelta(days=1)]

我想做的是,像operations一样,我想把daysmonthsyears赋给relativedelta()函数,但是我做不到。有什么建议的方法吗?

EN

回答 1

Stack Overflow用户

发布于 2020-08-25 21:20:41

找到一种方法来做到这一点!

我们可以使用**expression调用语法将字典传递给函数,它将扩展为关键字参数( **kwargs函数参数将再次捕获关键字参数):

代码语言:javascript
复制
attributes = {'days': 1}
relativedelta(**attributes)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61308335

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档