random tem geradores de números pseudoaleatórios

This commit is contained in:
Luiz Otávio
2022-12-24 09:40:00 -03:00
parent 2cf58b7442
commit cfd4f0d004

48
aula181.py Normal file
View File

@@ -0,0 +1,48 @@
# random tem geradores de números pseudoaleatórios
# Obs.: números pseudoaleatórios significa que os números
# parecem ser aleatórios, mas na verdade não são. Portanto,
# este módulo não deve ser usado para segurança ou uso criptográfico.
# O motivo disso é que quando temos uma mesma entrada e um mesmo algorítimo,
# a saída pode ser previsível.
# doc: https://docs.python.org/pt-br/3/library/random.html
import random
# Funções:
# seed
# -> Inicializa o gerador de random (por isso "números pseudoaleatórios")
# random.seed(0)
# random.randrange(início, fim, passo)
# -> Gera um número inteiro aleatório dentro de um intervalo específico
r_range = random.randrange(10, 20, 2)
# print(r_range)
# random.randint(início, fim)
# -> Gera um número inteiro aleatório dentro de um intervalo "sem passo"
r_int = random.randint(10, 20)
# print(r_int)
# random.uniform(início, fim)
# -> Gera um número flutuante aleatório dentro de um intervalo "sem passo"
r_uniform = random.uniform(10, 20)
# print(r_uniform)
# random.shuffle(SequenciaMutável) -> Embaralha a lista original
nomes = ['Luiz', 'Maria', 'Helena', 'Joana']
# random.shuffle(nomes)
# print(nomes)
# random.sample(Iterável, k=N)
# -> Escolhe elementos do iterável e retorna outro iterável (não repete)
novos_nomes = random.sample(nomes, k=3)
# print(nomes)
# print(novos_nomes)
# random.choices(Iterável, k=N)
# -> Escolhe elementos do iterável e retorna outro iterável (repete valores)
novos_nomes = random.choices(nomes, k=3)
print(nomes)
print(novos_nomes)
# random.choice(Iterável) -> Escolhe um elemento do iterável
print(random.choice(nomes))