Slumpmässig#
Introduktion#
Random ger åtkomst till Pythons urandom modul, som är tillgänglig som standard i VEXcode. Dessa metoder låter dig generera slumptal, flyttal och värden från listor eller intervall – användbara för att lägga till oförutsägbarhet i spel, beteenden och autonomt beslutsfattande.
Nedan följer en lista över tillgängliga metoder:
randint#
randint returnerar ett slumpmässigt heltal mellan två värden (inklusive), där båda värdena är heltal.
Usage:
urandom.randint(a, b)
Parameter |
Beskrivning |
|---|---|
|
Ett heltal som representerar den inkluderande nedre gränsen för intervallet. |
|
Ett heltal som representerar den övre gränsen för intervallet. |
# Generate a random integer between
# 1 and 10 (inclusive)
urandom_int = urandom.randint(1, 10)
brain.print(urandom_int)
# urandom_int = (random integer between 1 and 10)
enhetlig#
uniform returnerar ett slumpmässigt flyttal mellan två värden, där båda värdena är flyttal eller heltal.
Usage:
urandom.uniform(start, end)
Parameter |
Beskrivning |
|---|---|
|
Ett flyttal eller heltal som representerar intervallets nedre gräns. |
|
Ett flyttal eller heltal som representerar intervallets övre gräns. |
# Generate a random float
# between 5.0 and 10.0
urandom_uniform = urandom.uniform(5.0, 10.0)
brain.print(urandom_uniform)
# urandom_uniform = (random float
# between 5.0 and 10.0)
randrange#
randrange returnerar ett slumpmässigt heltal från ett intervall med ett valfritt steg, där både start- och stoppvärdena är heltal.
Usage:
urandom.randrange(start, stop, step)
Parameter |
Beskrivning |
|---|---|
|
Valfritt. Ett heltal som representerar det inkluderande startvärdet för intervallet. Standardvärdet är 0. |
|
Ett heltal som representerar det exklusiva slutvärdet i intervallet. |
|
Valfritt. Ett heltal som representerar skillnaden mellan varje tal i intervallet. Standardvärdet är 1. |
# Generate a random integer from
# 0 to 9 (exclusive of 10)
urandom_range = urandom.randrange(10)
brain.print(urandom_range)
# urandom_range = (random integer from 0 to 9)
# Generate a random integer from
# 5 to 15 (exclusive of 15)
urandom_range = urandom.randrange(5, 15)
brain.print(urandom_range)
# urandom_range = (random integer from 5 to 14)
# Generate a random integer from
# 10 to 50, stepping by 5
urandom_range = urandom.randrange(10, 50, 5)
brain.print(urandom_range)
# urandom_range = (random multiple of 5 between 10 and 45)
utsäde#
seed anger startvärdet för urandom:s pseudoslumptalsgenerator.
Om du inte anger ett frö kan ditt projekt producera samma slumpmässiga sekvens varje gång det startas.
För att få olika resultat på varje körning, ställ in fröet en gång i början av projektet med ett värde som ändras mellan körningarna – till exempel batteriavläsningar, ett timervärde eller en kombination av båda.
Usage:
urandom.seed(seed)
Parameter |
Beskrivning |
|---|---|
|
Ett heltal som används för att starta den pseudoslumpmässiga sekvensen. |
# Set a different seed each time the project starts
urandom.seed(int(brain.battery.current()))