Slumpmässig#
Introduktion#
Random ger åtkomst till Pythons random modul, som är tillgänglig som standard i VEXcode AIR. 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. För att börja använda dessa funktioner, lägg till import random högst upp i projektet.
Nedan följer en lista över tillgängliga metoder:
Nummergeneratorer – Producerar direkt slumptal eller bitar.
randint– Returnerar ett slumpmässigt heltal mellan två värden (inklusive).uniform– Returnerar ett slumpmässigt flyttal mellan två värden.randrange– Returnerar ett slumpmässigt heltal från ett intervall med ett valfritt steg.random– Returnerar ett slumpmässigt flyttal mellan 0,0 (inklusive) och 1,0 (exklusive).getrandbits– Returnerar ett heltal med ett angivet antal slumpmässiga bitar.
Val – Välj slumpmässigt element från sekvenser.
choice– Returnerar ett slumpmässigt element från en lista eller sekvens som inte är tom.
Tillståndskontroll – Hantera eller initiera tillståndet för slumptalsgeneratorn.
seed– Ställer in fröet för slumptalsgeneratorn för att producera deterministiska resultat.
Nummergeneratorer#
randint#
randint returnerar ett slumpmässigt heltal i intervallet a (inklusive) till b (inklusive).
Usage:
random.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. |
# Pick a number from 0 to 100
random_int = random.randint(0, 100)
controller.screen.print(random_int)
#random_int = (random integer between 0-100)
uniform#
uniform returnerar ett slumpmässigt flyttal mellan start och end.
Usage:
random.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
random_uniform = random.uniform(5.0, 10.0)
controller.screen.print(random_uniform)
# random_uniform = (random float between 5.0 and 10.0)
randrange#
randrange returnerar ett slumpmässigt heltal från det angivna intervallet.
Usage:
random.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)
random_range = random.randrange(10)
controller.screen.print(random_range)
# random_range = (random integer from 0 to 9)
# Generate a random integer from
# 5 to 15 (exclusive of 15)
random_range = random.randrange(5, 15)
controller.screen.print(random_range)
# random_range = (random integer from 5 to 14)
random#
random returnerar ett slumpmässigt flyttal i intervallet 0,0 (inklusive) till 1.0 (exklusive).
Usage:
random.random()
Parameter |
Beskrivning |
|---|---|
Den här metoden har inga parametrar. |
# Generate a random float between 0.0 and 1.0
random_float = random.random()
controller.screen.print(random_float)
# random_float = (random float between 0.0 and 1.0)
getrandbits#
getrandbits returnerar ett heltal med ett angivet antal slumpmässiga bitar.
Usage:
random.getrandbits(n)
Parameter |
Beskrivning |
|---|---|
|
Ett heltal som representerar antalet slumpmässiga bitar |
# Generate a random integer with 8 random bits
random_bits = random.getrandbits(8)
controller.screen.print(random_bits)
# random_bits = (random integer between 0 and 255)
Urval#
choice#
choice väljer och returnerar ett objekt slumpmässigt från en sekvens.
Usage:
random.choice(sequence)
Parameter |
Beskrivning |
|---|---|
|
En icke-tom sekvens (lista, tupel eller annat indexerbart objekt) från vilken ett slumpmässigt element väljs. |
# Choose a random number from a list
random_choice = random.choice([10, 20, 30, 40, 50])
controller.screen.print(random_choice)
# random_choice = (randomly chosen number from the list)
Statlig kontroll#
seed#
seed initierar slumptalsgeneratorn och ställer in dess tillstånd så att slumpmässiga resultat kan reproduceras.
Usage:
random.seed(a=None)
Parameter |
Beskrivning |
|---|---|
|
Valfritt. Frövärdet. Kan vara ett heltal, flyttal, str, bytes eller bytearray. Om |
random.seed(42)
# Always return the same results
print(random.randint(1, 10))
print(random.random())