time

1、time包

2、time.Time类型, 用来表示时间

3、取当前时间, now := time.Now()

4、time.Now().Day(),time.Now().Minute(),time.Now().Month(),time.Now().Year(),

second := now.Unix() //按秒计

5、格式化,fmt.Printf(“%02d/%02d%02d %02d:%02d:%02d”, now.Year()…)

package main

import(
"time"
"fmt"
) func testTime() {
for {
now := time.Now()
fmt.Printf("type of now is:%T\n", now) year := now.Year()
month := now.Month()
day := now.Day() str := fmt.Sprintf("%04d-%02d-%02d %02d:%02d:%02d\n", year, month, day, now.Hour(), now.Minute(), now.Second())
fmt.Println(str) fmt.Printf("timestamp:%d\n", now.Unix()) //时间戳
}
}

6、time.Duration 用来表示纳秒

7、 一些常量量:

const (   

   Nanosecond Duration = 1

Microsecond= 1000 * Nanosecond //纳秒

Millisecond= 1000 * Microsecond //微妙

Second= 1000 * Millisecond //毫秒

Minute= 60 * Second

Hour= 60 * Minute

)

package main

import(
"time"
"fmt"
) func testTimeConst() {
fmt.Printf("Nanosecond :%d\n", time.Nanosecond) //1
fmt.Printf("Microsecond:%d\n", time.Microsecond) //1000
fmt.Printf("Millisecond:%d\n", time.Millisecond) //1000000
fmt.Printf("second :%d\n", time.Second)
fmt.Printf("Minute :%d\n", time.Minute)
fmt.Printf("Hour :%d\n", time.Hour)
}

8. 格式化:

now := time.Now()

fmt.Println(now.Format(“02/1/2006 15:04:05”))    //02/1/2006 03:04:05   十二小时制

fmt.Println(now.Format(“2006/1/02 15:04:05”))

fmt.Println(now.Format(“2006/1/02”))

package main

import(
"time"
"fmt"
)
func main() {
now := time.Now()
str := now.Format("2006-01-02 03:04:05")
fmt.Printf("format result:%s\n", str)
}

练习:写 一个程序,统计一段代码的执行耗时,单位精确到微秒

package main

import(
"time"
"fmt"
) func main() {
start := time.Now().UnixNano() //纳秒为单位
/*
业务代码
*/
time.Sleep(10*time.Millisecond)
end := time.Now().UnixNano()
cost := (end - start)/1000
fmt.Printf("cost:%dus\n", cost)
}

os

package main
import (
"fmt"
"os"
) func main() {
var goos string = os.Getenv("OS") //操作系统的名字
fmt.Printf("The operating system is: %s\n", goos)
path := os.Getenv("PATH") //GOPATH的路径
fmt.Printf("Path is %s\n", path)
}

math/rand

fmt

各种方法集合:

格式化输出:


package main
import "fmt"
func main() {
var a int = 100
var b bool
c := 'a'

fmt.Printf("%+v\n", a) //类似%v,但输出结构体时会添加字段名
fmt.Printf("%#v\n", b) //相应值的Go语法表示
fmt.Printf("%T\n", c) //值的类型的Go语法表示
fmt.Printf("90%%\n") //字面上的%
fmt.Printf("%t\n", b) //布尔值
fmt.Printf("%b\n", 100) //二进制
fmt.Printf("%f\n", 199.22) //浮点型,有小数点,但没有指数
fmt.Printf("%q\n", "this is a test") //双引号围绕的字符字面值
fmt.Printf("%x\n", 39839333) //每个字节用两字符十六进制数表示(使用a-f)
fmt.Printf("%p\n", &a) //传入指针,表示为十六进制,并加上前导的0x
fmt.Printf("%c\n", 87) //相应Unicode码所表示的字符

str := fmt.Sprintf("a=%d", a) // 将a转化为字符串
fmt.Printf("%q\n", str)
}

格式化输入:


package main

import "fmt"

var number int
var str string

func main() {
fmt.Scanf("%d", &number)
fmt.Scanf("%s", &str)
fmt.Println(number, str)
}
 

go的相关包time、os、rand、fmt的更多相关文章

  1. Red Hat Enterprise Server 6.0 安装Sendmail相关包

    由于需要在Linux服务器(Red Hat Enterprise Linux Server release 6.0)上配置邮件服务,需要安装Sendmail包,一般Sendmail的安装有两种方式:R ...

  2. Maven使用-利用Maven引入相关包(Struts2)

    根据上一篇的项目搭建,接下来引入需要使用Struts2相关包 1,如何利用maven往项目中引入包? maven就像一个导包助手一样,让它知道去哪里拿什么,他就会自动完成需要的包的搬运工作. (1), ...

  3. 通过脚本下载GO被墙或常用的相关包

    脚本描述 脚本依赖环境:Windows,GO,GIT 脚本将创建 temp 目录,并拷贝相关包到第一个 GOPATH 中 可将脚本保存到本地自行添加被墙或者常用的包 完整脚本代码 @echo off ...

  4. windows下数据挖掘相关包numpy、pandas的安装

    安装Anaconda的绕道 这里介绍如何在windows下安装numpy/scipy/matplotlib/pandas/scikit_learn等数据分析相关包 相关环境: win7 64位 pyt ...

  5. Linux下安装python3及相关包

    Python3: sudo apt-get install python3 终端中输入python则进入python2,输入python3则进入python3 安装python2的相关包: sudo ...

  6. golang——随机数(math/rand包与crypto/rand包)

    1.math/rand 包 1.1.math/rand 包实现了伪随机数生成器 1.2.主要方法 (1)func Seed(seed int64) 设置随机种子,不设置则默认Seed(1) (2)fu ...

  7. windows下64位python的安装及机器学习相关包的安装(实用)

    开通博客已久,想了好久决定写个基础的安装教程,望后人少走弯路,也借此希望跟大家多多交流.文中给出的链接默认是基于对python2.7的前提下的包. 1.首先下载64位Python包,进行安装(默认py ...

  8. 安装linux环境及相关包方法

    安装linux系统: 先下载 iso镜像文件,在windows系统下,插入u盘,下载 Ultraiso软件,安装好后,根据 http://jingyan.baidu.com/article/a378c ...

  9. python 关于操作文件的相关模块(os,sys,shutil,subprocess,configparser)

    一:os模块 os模块提供了许多允许你程序与操作系统直接交互的功能 os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径 os.chdir("dirname&quo ...

  10. R语言数据挖掘相关包总结-转帖

    与数据挖掘有关或者有帮助的R包和函数的集合. 1.聚类 常用的包: fpc,cluster,pvclust,mclust 基于划分的方法: kmeans, pam, pamk, clara 基于层次的 ...

随机推荐

  1. webpack的核心概念

    一.entry 指定webpack从哪个文件开始入手打包,下面是单入口 多页面开发,每个页面都有自己的js文件,多个文件,所以需要多个入口 我们看看多入口,单出口bundle.js,我们在src仅仅多 ...

  2. win10关闭自动更新的方法

    win10关闭自动更新的方法和步骤: 一.禁用Windows Update服务 1.打开服务项,win+r 输入 services.msc ,或者控制面板-管理工具-服务. 2.找到 Windows ...

  3. NSQ(8)-有赞相关改进

    如何保证消息队列的高可用(HA) NSQ 本身就是一个分布式消息队列,且支持水平扩展,无单点故障,能在无中断的情况下无缝添加集群结点. nsq用到了集群去保证整个服务的高可用,但并不能保证单个topi ...

  4. 压缩打包,tar

    压缩打包命令 创建压缩包 tar -zcvf /home/xxxx.tar.gz /xahot 解压 tar -zxvf xxx.tar.gz gzip   xxxx  自动变为 xxx.gz

  5. win/ubuntu/centos 安装后台监控工具btop

    之前linux平台进行后台监控一直是简单的看top,但界面太难看而且需要记的缩写太多而且不直观(对于我来说),后面有尝试替换htop,扩展支持了鼠标操作以及直观监控,但是界面还是难看,今天查找了一下发 ...

  6. koa源代码解析

    koa不愧为小而美,主要代码很少.简单来说,1,koa封装了node的http.createServer((req,res)=>{})的入参req,res到ctx同名属性(一个自定义对象)中,并 ...

  7. Kubernetes学习笔记(二)

    [查看pod里container的logs] kubectl logs nginx --all-containers=true                  #Return snapshot lo ...

  8. C++ 11 std::mem_fn

    mem_fn 想到member function 成员函数 这还真就是用来调用成员函数的 普通的函数我们通过函数指针可以调用,但对于成员函数的调用稍微复杂一点,需要对象,也即this指针 因为成员函数 ...

  9. No.1.3

    CSS层叠样式表   /* css注释 */ CSS引入方式 内嵌式:CSS写在style标签中 提示:style标签虽然可以写在页面任意位置,但是通常约定写在 head 标签中(作用范围:当前页面: ...

  10. URAL2127 Determinant of a Graph 题解

    这个题真的折磨了我超久的.全网几乎搜不到一个详细的题解,俺来写写吧. 题意:给你一个无自环无重边的连通无向图,求它邻接矩阵的行列式的值. \(n\le 2*10^5,n-1\le m \le n+50 ...