Golangのラムダ関数で乱数を生成するにはどうすればよいですか?

WBOY
リリース: 2024-06-05 12:22:56
オリジナル
335 人が閲覧しました

Go ラムダ関数で乱数を生成するには、math/rand ライブラリを使用する必要があります。ライブラリをインポートし、シードを設定して、異なる出力を確保します。 rand.Intn(max) を使用して、ランダムな整数 (範囲 [0,max)] を生成します。 rand.Float64() を使用して、ランダムな 10 進数 (範囲 [0.0,1.0)] を生成します。 rand.ReadStringN(n) を使用して、ランダムな文字列 (長さ n) を生成します。

如何在 Golang lambda 函数中生成随机数?

Golangのラムダ関数で乱数を生成するにはどうすればよいですか?

Golang 言語には、強力な乱数生成ライブラリ math/rand が組み込まれています。このライブラリを使用すると、ラムダ関数で乱数を簡単に生成できます。 math/rand。利用这个库,我们可以轻松地在 lambda 函数中生成随机数。

安装并设置

首先,导入 math/rand 库:

import (
    "math/rand"
    "time"
)
ログイン後にコピー

time.Now().UnixNano() 部分用于生成种子,确保每次生成随机数时都有不同的输出。

生成随机整数

可以使用 rand.Intn(max) 函数生成一个介于 [0, max) 范围内的随机整数,其中 max 指定了上限。

max := 10
num := rand.Intn(max)
fmt.Println(num) // 输出一个介于 [0, 10) 范围内的随机整数
ログイン後にコピー

生成随机小数

可以使用 rand.Float64() 函数生成一个介于 [0.0, 1.0) 范围内的随机小数。

num := rand.Float64()
fmt.Println(num) // 输出一个介于 [0.0, 1.0) 范围内的随机小数
ログイン後にコピー

生成随机字符串

可以使用 rand.ReadStringN(n) 函数生成一个长度为 n 的随机字符串。

length := 10
str := make([]byte, length)
rand.ReadStringN(len(str), str)
fmt.Println(string(str)) // 输出一个 10 个字符长的随机字符串
ログイン後にコピー

实战案例

以下是一个使用 math/rand 库在 Golang lambda 函数中生成随机数的简单示例:

package main

import (
    "context"
    "encoding/json"
    "fmt"
    "log"
    "math/rand"
    "time"

    "github.com/aws/aws-lambda-go/lambda"
)

func handler(ctx context.Context, req []byte) (int, error) {
    rand.Seed(time.Now().UnixNano())
    return rand.Intn(10), nil
}

func main() {
    lambda.Start(handler)
}
ログイン後にコピー

这个 lambda 函数会生成一个介于 [0, 10)

🎜インストールとセットアップ🎜🎜🎜まず、math/rand ライブラリをインポートします: 🎜rrreee🎜 time.Now().UnixNano() 部分は生成に使用されます。シード、乱数が生成されるたびに異なる出力があることを確認してください。 🎜🎜🎜ランダムな整数を生成する🎜🎜🎜 rand.Intn(max) 関数を使用すると、[0, max) の範囲内でランダムな整数を生成できます。 max は上限を指定します。 🎜rrreee🎜🎜ランダムな小数を生成する🎜🎜🎜 rand.Float64() 関数を使用して、[0.0, 1.0) の範囲内のランダムな小数を生成できます。 🎜rrreee🎜🎜ランダムな文字列を生成する🎜🎜🎜 rand.ReadStringN(n) 関数を使用して、長さ n のランダムな文字列を生成できます。 🎜rrreee🎜🎜実際的なケース🎜🎜🎜 以下は、math/rand ライブラリを使用して Golang ラムダ関数で乱数を生成する簡単な例です: 🎜rrreee🎜このラムダ関数は、以下の値を生成します。 範囲 [0, 10) のランダムな整数であり、関数ログに出力されます。 🎜

以上がGolangのラムダ関数で乱数を生成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!