网上查了很多人的回复发现没有人对python生成时间给到一个准确的没有问题的解决方案,以下是我踩过的坑,总结到了这里,如果有问题,留言私信给我。
Databricks Runtime Version:
6.4 Extended Support (includes Apache Spark 2.4.5, Scala 2.11)
import datetime
#一定不要用from datetime import datetime   你会遇到贼多的麻烦
#系统生成UTC时间
now_date = datetime.datetime.now()

next_date0=now_date+datetime.timedelta(days=time_interval)#time_interval需要是int类型,python通过main传入的参数通常是str类型,需要进行转换int 类型
next_date1=now_date+datetime.timedelta(days=8)
next_date2=now_date+datetime.timedelta(hours=8)
now_date_format=now_date.strftime('%Y-%m-%d')
#利用给定的字符串时间,进行相关操作
now="2025-12-01"
now_2= datetime.datetime.strptime(now,'%Y-%m-%d')
#此时now_past 已经是时间类型,可以使用上面的时间操作对now_past 进行操作。
 
如果在spark中需要将时间类型转换为string类型,则使用下面函数方法。
old_date=(now_2+datetime.timedelta(days=time_interval)).strftime('%Y-%m-%d')   #记得给.strftime()前添加括号“(now_2+datetime.timedelta(days=time_interval))” 我记得不加括号好像会报错。你们可以自己验证一下。