python - 如何在 python 中将 lambda 用于日期时间参数
问题描述
这是我的代码:
for current, next in zip(xlist, ylist):
start = datetime.strptime(current["id"], '%Y-%m-%d').date()
next_start = datetime.strptime(next["id"], '%Y-%m-%d').date()
我想知道是否有一种方法可以使用 lambda 在一行代码中编写 start 和 next_start 。我尝试了以下代码,但它不正确:
for current, next in zip(xlist, ylist):
start, next_start = lambda X:datetime.strptime(X, '%Y-%m-%d').date()
解决方案
为什么要在一行中声明它们?它们是两个不同的日期,需要两个不同的变量。
您可以将 lambda 函数设置为:
set_date = lambda x: datetime.strptime(x, "%Y-%m-%d").date()
start = set_date(current)
但是 next_start 需要一个完全不同的变量来设置日期。
此外,start, next_start = lambda X:datetime.strptime(X, '%Y-%m-%d').date()
此语法导致 start 和 next_start 具有相同的值。
对我来说,看起来我们必须不遗余力地强制“Pythonic”模式,并将看似简单的解决方案变成不可读的东西。
推荐阅读
- java - 将基本 Java Web 应用程序部署到 AWS:javax/xml/bind/JAXBException
- r - nls fit 有效,但在 geom_smooth 内失败
- java - 将位图转换为有效的 Uri
- php - 如何在我的视图中使用循环从两个 Laravel 表中获取值
- google-sheets - 在 Google 表格中输入日期
- python - 如何使用python将excel文件的所有行和列组合成另一个excel文件的单个单元格?
- python - Python Django 数据库事务使用更新
- mysql - SQL 分页尝试:OFFSET(偏移量)在此位置不是有效输入
- linux - ath9k 在 ocb 模式下堆叠日期
- xml - 在 Spring Boot 上接收嵌套的 xml 对象