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. 详解搭建ubuntu版hadoop集群

    https://download.csdn.net/download/weixin_38583278/12844195?ops_request_misc=%257B%2522request%255Fi ...

  2. SQL语句大全,你不会写的SQL可能都在这里

    1.创建数据库 CREATE DATABASE database-name 2.删除数据库 drop database dbname3.说明:备份sql server 创建 备份数据的 device ...

  3. 如何让公司内网ip映射到公网?

    其实这就是端口映射的技术,而端口映射至外网访问2种方法,今天我们来具体谈一谈. 公司内外网互通是网络技术运维人员经常需要面对的问题和需求场景,不管是疫情严重的当下,还是不在公司而又无法快速回公司却又急 ...

  4. xorg 屏幕分辨率设置(x11分辨率设置/linux分辨率设置)

    记录一下,用于linux虚拟机分辨率设置.https://blog.csdn.net/weixin_36084095/article/details/116839103(在谷歌搜索是简书的文章,在百度 ...

  5. python33

    Python逻辑运算符 Python语言支持逻辑运算符,以下假设变量 a 为 10, b为 20: 运算符 逻辑表达式 描述 实例 and x and y 布尔"与" - 如果 x ...

  6. COOP/COHP(上)-PROOUT

    晶体轨道重叠布居 COOP(crystal orbital overlap population)的一个更为直观的名称是 重叠布居权重的态密度 (overlap population-weighted ...

  7. git切换到某个tag

    git checkout tags/some_tag_name -b a_new_branch_name

  8. wsl 的 tail -f 不好使

    windows 上的sub linux ubuntu 的tail -f 不好使 在/etc/profile 中加入alias alias tailf='tail -f ---disable-inoti ...

  9. R7-7 调查电视节目受欢迎程度

    R7-7 调查电视节目受欢迎程度 分数 15 全屏浏览题目 切换布局 作者 颜晖 单位 浙大城市学院 某电视台要调查观众对该台8个栏目(设相应栏目编号为1~8)的受欢迎情况,共调查了n位观众(1≤n≤ ...

  10. taro+vue3+TS+Pinia+tailwindcss+NutUI项目创建与开发

    一.初始化 1.Taro 基本安装并初始化项目 npx @tarojs/cli init WechatAppDemo -选择框架:vue3 -是否使用ts?y -请选择css预编译器:无 -请选择we ...