多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
golang生成指定位数的随机数 1.随机数 随机数,是使用一个确定性的算法计算出来随机数序。在程序开发中经常需要产生随机数,如随机数验证码登陆、作为唯一身份标识数据等等。 2.rand库 golang中产生随机数主要有两个包,分别是“math/rand”和“crypto/rand”。 “math/rand”的rand包实现了伪随机数生成器。 "crypto/rand"的rand包实现了用于加解密的更安全的随机数生成器。 3.生成指定位数随机数 以生成六位随机数为例 ~~~ package main import ( "fmt" "math/rand" ) func CreateCaptcha() string { return fmt.Sprintf("%06v", rand.New(rand.NewSource(time.Now().UnixNano())).Int31n(1000000)) } func main(){ fmt.Println(CreateCaptcha() ) } ~~~ 输出结果: 在这里插入图片描述 同理生成八位随机数只需修改产生随机数参数即可 ~~~ func CreateCaptcha() string { return fmt.Sprintf("%08v", rand.New(rand.NewSource(time.Now().UnixNano())).Int31n(100000000)) } ~~~ 依次类推,需要其他指定位数的随机数时均可通过修改上述参数产生。