Table des matières
1. random.randint(start,stop)
2 random.randrange(start,stop,step)
3. choix aléatoire (seq)
Maison développement back-end Tutoriel Python Analyse du module aléatoire en Python (avec exemples)

Analyse du module aléatoire en Python (avec exemples)

Nov 23, 2018 pm 04:57 PM
python

Le contenu de cet article concerne l'analyse du module aléatoire en Python (avec des exemples). Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer.

random est un module permettant à Python de générer des nombres pseudo-aléatoires. La graine aléatoire est par défaut l'horloge système. Les méthodes du module sont analysées ci-dessous :

1. random.randint(start,stop)

Il s'agit d'une fonction qui génère des nombres aléatoires entiers. Le paramètre start représente la valeur minimale et le. le paramètre stop représente la valeur maximale. , les valeurs aux deux extrémités peuvent être obtenues ; la complexité temporelle de l'algorithme de fonction

est : O(1)

Code source principal :

return self.randrange(a,b+1) #调用randrange函数来处理
Copier après la connexion

Exemple :

import random

for i in range(20):
    print(random.randint(0,10),end=' ')
Copier après la connexion

Résultat :

1 1 7 5 10 1 4 1 0 8 7 7 2 10 6 8 6 0 3 1
Copier après la connexion

2 random.randrange(start,stop,step)

est également un. fonction entière aléatoire avec paramètres optionnels

  • Lorsqu'il n'y a qu'un seul paramètre, la plage aléatoire par défaut est de 0 au paramètre, fermée à l'avant et ouverte à la fin

  • Quand il y a deux paramètres, il représente les valeurs minimum et maximum, fermé à l'avant Ouvert plus tard

  • Lorsqu'il y a trois paramètres, il représente le minimum valeur, valeur maximale et taille de pas, fermer d'abord et ouvrir plus tard

complexité temporelle de l'algorithme de fonction :O(1)

Code source principal :

return istart+istep*self._randbelow(n) #调用randbelow函数处理
Copier après la connexion

Exemple :

import random

for i in range(10):
    print(random.randrange(10),end=' ') #产生0到10(不包括10)的随机数

print("")

for i in range(10):
    print(random.randrange(5,10),end=' ') #产生5到10(不包括10)的随机数

print("")

for i in range(10):
    print(random.randrange(5,100,5),end=' ') #产生5到100(不包括100)范围内的5倍整数的随机数
Copier après la connexion

Résultat :

1 1 2 4 4 3 4 6 1 4
6 6 5 7 8 9 6 6 6 5
30 50 20 40 75 85 25 65 80 95
Copier après la connexion

3. choix aléatoire (seq)

Une fonction de sélection aléatoire, seq est une fonction non vide. ensemble, et un élément est sélectionné au hasard pour la sortie dans l'ensemble. Il n'y a pas de limite sur le type de l'élément.

Code source principal :

i=self._randbelow(len(seq)) #由randbelow函数得到随机地下标
return seq[i]
Copier après la connexion

Responsabilité temporelle de l'algorithme de fonction : O(1)

Exemple :

import random

list3=["mark","帅",18,[183,138]]
for j in range(10):
    print(random.choice(list3),end=' ')
Copier après la connexion

Code :

mark 帅 [183, 138] 18 mark 18 mark 帅 帅 [183, 138]
Copier après la connexion
4. random.random()

Cette fonction forme n'importe quel nombre à virgule flottante de 0,0 à 1,0, fermé à gauche et ouvert à droite, sans paramètres.

Exemple :

import random

for j in range(5):
    print(random.random(),end=' ')
Copier après la connexion
Résultat d'exécution :

0.357486615834809 0.5928029747238529 0.37053940107869987 0.3802224543848519 0.9741990956161711
Copier après la connexion
5.random.send(n=None)

Une fonction qui peut correspondre. nombres aléatoires Une fonction pour initialiser le générateur, n représente une graine aléatoire ; lorsque n = Aucun, la graine aléatoire est l'heure du système, et lorsque n représente d'autres données, telles que int, str, etc., les données fournies sont utilisées comme la graine aléatoire et la séquence de nombres aléatoires générée est fixe.

Instance :

import random

random.seed("mark")
for j in range(20):#无论启动多少次程序,输出的序列不变
    print(random.randint(0,10),end=' ')
Copier après la connexion
Résultat :

4 1 10 5 6 2 8 5 5 10 7 2 9 6 2 6 0 5 10 10
Copier après la connexion
6. random.getstate() et random.setstate(state) :

getstate La fonction () est utilisée pour enregistrer l'état du générateur de nombres aléatoires et la fonction setstate(state) est utilisée pour restaurer le générateur au dernier état enregistré.

Instance :

import random

tuple1=random.getstate()#记录生成器的状态
for i in range(20):
    print(random.randint(0,10),end=' ')
print()
random.setstate(tuple1)#传入参数回复之间的状态
for i in range(20):
    print(random.randint(0,10),end=' ')#两次输出的结果一致
Copier après la connexion
Résultat :

5 7 9 9 10 10 2 3 7 1 1 6 1 7 1 1 7 4 2 2
5 7 9 9 10 10 2 3 7 1 1 6 1 7 1 1 7 4 2 2
Copier après la connexion
7. random.shuffle(seq,random=None) :

paire d'entrants La collection est mélangée. Il ne peut être utilisé que pour les séquences mutables, telles que les chaînes et les listes. Une erreur sera signalée pour les séquences immuables telles que les tuples utilisés pour sélectionner la méthode d'opération dans le désordre, telle que random=random.

Code source principal :

for i in reversed(range(1,len(x))):
    j=randbelow(i+1)
    x[i],x[j]=x[k],x[i]
Copier après la connexion
Complexité temporelle de l'algorithme de fonction : O(n)

Exemple :

import random

lists=['mark','帅哥',18,[183,138]]
print(lists)
random.shuffle(lists,random=None)
print(lists)
Copier après la connexion
Résultat :

['mark', '帅哥', 18, [183, 138]]
['帅哥', 18, 'mark', [183, 138]]
Copier après la connexion
8. random.sample(population,k):

Le paramètre de population est une séquence, telle qu'une liste, un tuple, un ensemble, une chaîne, etc.; l'ensemble Les éléments forment une nouvelle séquence sans changer la séquence d'origine.

Pire complexité temporelle : O(n*n)

Exemple :

import random

lists=['mark','帅哥',18,[183,138]]
lists2=random.sample(lists,3)
print(lists)
print(lists2)
Copier après la connexion
Résultat :

['mark', '帅哥', 18, [183, 138]]
['mark', [183, 138], '帅哥']
Copier après la connexion
9. uniforme aléatoire (. a,b)

Une fonction qui génère un nombre à virgule flottante entre les paramètres a et b. Si a>b, elle génère un nombre à virgule flottante entre b et a.

Code source principal :

return a+(b-a)*self.random()
Copier après la connexion
Complexité temporelle : 0(1)

Exemple :

import random

for i in range(5):
    print(random.uniform(10,1))
Copier après la connexion
Résultat :

2.8826090956524606
1.5211191352548408
3.2397454278562794
4.147879756524251
6.532545391009419
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

La vitesse de conversion est-elle rapide lors de la conversion du XML en PDF sur le téléphone mobile? La vitesse de conversion est-elle rapide lors de la conversion du XML en PDF sur le téléphone mobile? Apr 02, 2025 pm 10:09 PM

La vitesse du XML mobile à PDF dépend des facteurs suivants: la complexité de la structure XML. Méthode de conversion de configuration du matériel mobile (bibliothèque, algorithme) Méthodes d'optimisation de la qualité du code (sélectionnez des bibliothèques efficaces, optimiser les algorithmes, les données de cache et utiliser le multi-threading). Dans l'ensemble, il n'y a pas de réponse absolue et elle doit être optimisée en fonction de la situation spécifique.

Comment convertir les fichiers XML en PDF sur votre téléphone? Comment convertir les fichiers XML en PDF sur votre téléphone? Apr 02, 2025 pm 10:12 PM

Il est impossible de terminer la conversion XML à PDF directement sur votre téléphone avec une seule application. Il est nécessaire d'utiliser les services cloud, qui peuvent être réalisés via deux étapes: 1. Convertir XML en PDF dans le cloud, 2. Accédez ou téléchargez le fichier PDF converti sur le téléphone mobile.

Quelle est la fonction de la somme du langage C? Quelle est la fonction de la somme du langage C? Apr 03, 2025 pm 02:21 PM

Il n'y a pas de fonction de somme intégrée dans le langage C, il doit donc être écrit par vous-même. La somme peut être obtenue en traversant le tableau et en accumulant des éléments: Version de boucle: la somme est calculée à l'aide de la longueur de boucle et du tableau. Version du pointeur: Utilisez des pointeurs pour pointer des éléments de tableau, et un résumé efficace est réalisé grâce à des pointeurs d'auto-incitation. Allouer dynamiquement la version du tableau: allouer dynamiquement les tableaux et gérer la mémoire vous-même, en veillant à ce que la mémoire allouée soit libérée pour empêcher les fuites de mémoire.

Comment convertir XML en images Comment convertir XML en images Apr 03, 2025 am 07:39 AM

XML peut être converti en images en utilisant un convertisseur XSLT ou une bibliothèque d'images. Convertisseur XSLT: Utilisez un processeur XSLT et une feuille de style pour convertir XML en images. Bibliothèque d'images: utilisez des bibliothèques telles que PIL ou ImageMagick pour créer des images à partir de données XML, telles que des formes de dessin et du texte.

Existe-t-il une application mobile qui peut convertir XML en PDF? Existe-t-il une application mobile qui peut convertir XML en PDF? Apr 02, 2025 pm 09:45 PM

Il n'y a pas d'application qui peut convertir tous les fichiers XML en PDF car la structure XML est flexible et diversifiée. Le noyau de XML à PDF est de convertir la structure des données en une disposition de page, ce qui nécessite l'analyse du XML et la génération de PDF. Les méthodes courantes incluent l'analyse de XML à l'aide de bibliothèques Python telles que ElementTree et la génération de PDF à l'aide de la bibliothèque ReportLab. Pour le XML complexe, il peut être nécessaire d'utiliser des structures de transformation XSLT. Lorsque vous optimisez les performances, envisagez d'utiliser multithread ou multiprocesses et sélectionnez la bibliothèque appropriée.

Outil de mise en forme XML recommandé Outil de mise en forme XML recommandé Apr 02, 2025 pm 09:03 PM

Les outils de mise en forme XML peuvent taper le code en fonction des règles pour améliorer la lisibilité et la compréhension. Lors de la sélection d'un outil, faites attention aux capacités de personnalisation, en gérant des circonstances spéciales, des performances et de la facilité d'utilisation. Les types d'outils couramment utilisés incluent des outils en ligne, des plug-ins IDE et des outils de ligne de commande.

Comment convertir XML en PDF sur votre téléphone avec une qualité de haute qualité? Comment convertir XML en PDF sur votre téléphone avec une qualité de haute qualité? Apr 02, 2025 pm 09:48 PM

Convertir XML en PDF avec une qualité de haute qualité sur votre téléphone mobile nécessite: analyser le XML dans le cloud et générer des PDF à l'aide d'une plate-forme informatique sans serveur. Choisissez un analyseur XML efficace et une bibliothèque de génération PDF. Gérer correctement les erreurs. Faites une utilisation complète de la puissance de cloud computing pour éviter les tâches lourdes sur votre téléphone. Ajustez la complexité en fonction des exigences, notamment le traitement des structures XML complexes, la génération de PDF de plusieurs pages et l'ajout d'images. Imprimez les informations du journal pour aider à déboguer. Optimiser les performances, sélectionner des analyseurs efficaces et des bibliothèques PDF et peut utiliser une programmation asynchrone ou des données XML prétraitées. Assurez-vous une bonne qualité de code et maintenabilité.

Comment convertir XML en PDF sur Android Phone? Comment convertir XML en PDF sur Android Phone? Apr 02, 2025 pm 09:51 PM

La conversion de XML en PDF directement sur les téléphones Android ne peut pas être réalisée via les fonctionnalités intégrées. Vous devez enregistrer le pays via les étapes suivantes: Convertir les données XML en formats reconnus par le générateur PDF (tels que le texte ou le HTML); Convertissez HTML en PDF à l'aide de bibliothèques de génération HTML telles que Flying Saucer.

See all articles