GolangNote

Golang笔记

GoLang 实现python timedelta 函数功能

Permalink

在python 里有个函数datetime.timedelta 很有用,用来计算某个时间往后多少时间后的时间。

有点拗口,看看python 示例:

Python: timedelta
1
2
3
4
5
6
7
8
9
10
11
#!/usr/bin/env python
# -*- coding:utf-8 -*-

from datetime import datetime,timedelta

now = datetime.now()

yestoday = now - timedelta(days=1)
tommorow = now + timedelta(days=1)

next_year = now + timedelta(days = 365)

golang 实现起来就不那么简洁了:

Go: timedelta
1
2
3
4
5
6
7
8
9
10
11
12
13
package main

import (
    "fmt"
    "time"
)

func main() {
    baseTime := time.Date(2015, 10, 25, 0, 0, 0, 0, time.UTC)
    // after 2 days 8 hour 100 second
    date := baseTime.Add(2*24*time.Hour + 8*time.Hour + 100*time.Second)
    fmt.Println(date)
}

本文网址: https://golangnote.com/topic/91.html 转摘请注明来源

Related articles

Golang实现简单的Socks5代理

Socks5 代理较 `http/https` 代理有较好的性能,下面是借鉴某个著名开源软件的 local 实现的简单代理。...

Golang http IPv4/IPv6 服务

Golang 的网络服务,如果不指定IPv4 或 IPv6,如果VPS 同时支持 IPv4 和 IPv6,`net.Listen()` 只会监听 IPv6 地址。但这不影响客户端使用 IPv4 地址来访问。...

golang共享数据用Mutex 或 Channel

在go 里,多线程对共享数据的操作一般要使用Mutex 或 Channel 来加锁或隔离通信。下面是一个使用Mutex 和 Channel 比较的例子。...

Write a Comment to "GoLang 实现python timedelta 函数功能"

Submit Comment Login
Based on Golang + fastHTTP + sdb | go1.20 Processed in 0ms