J'ai commencé à apprendre python récemment et j'ai une question sur les boucles pour lesquelles j'étais en espérant que quelqu'un puisse répondre. Je veux être capable d'imprimer tous les produits possibles de deux nombres de un à dix. donc: 2 par 2, 2 par 3, 2 par 4 ... 2 par 10, 3 par 2, 3 par 3 ... 3 par 10, 4 par 2, 4 par 3 etc ... J'aurais pensé que le La façon la plus simple de le faire serait d'utiliser deux boucles, mais je ne suis pas sûr. Quelqu'un pourrait-il me dire comment cela se fait. Merci beaucoup. Asadm.en utilisant deux pour les boucles en python
Répondre
for i in range(1, 11):
for j in range(1, 11):
print i * j
Juste pour le plaisir (et les itertools-dépendants SO lecteurs) en utilisant une seule boucle for:
from itertools import product
for i,j in product(xrange(1,11), xrange(1,11)):
print i*j
EDIT: en utilisant xrange comme suggéré par Hank Gay
Pourrait aussi bien utiliser xrange si vous apportez des outils. –
Fyi, le produit est inutile (mais moi, C boucles au lieu de python), python a la syntaxe pour cela: produit (gamme (1,11), gamme (1,11)) <=> (i, j pour i de gamme (1,11) pour j dans la plage (1,11)) pour x dans (i * j pour i dans la plage (1,11) pour j dans la plage (1,11)): print x, –
mais de nouveau vous avez> 1 pour-boucles ;-) –
Voici une autre façon
a = [i*j for i in xrange(1,11) for j in xrange(i,11)]
note nous devons commencer deuxième iterator de « i 'Au lieu de 1, c'est donc doublement efficace
modifier: la preuve qu'il est le même que solution simple
b = []
for i in range(1,11):
for j in range(1,11):
b.append(i*j)
print set(a) == set(b)
montrez le temps approximatif pour 10000 itération a prend .8 sec tandis que b prend 2.5 se donc abt 3 fois plus lent est –
Vous ne pouvez pas besoin de l'imbriquée for-loop
Solution.
une seule boucle avec liste Comprehension (comme indiqué ci-dessous) suffirait:
r_list = list(range(2, 11))
output = []
for m in r_list:
tmp = [m*z for z in r_list]
output.append(tmp)
print(output)
ou simplifiez:
output = []
for m in list(range(2, 11)):
tmp = [m*z for z in list(range(2, 11))]
output.append(tmp)
print(output)
Prints:
[
[4, 6, 8, 10, 12, 14, 16, 18, 20],
[6, 9, 12, 15, 18, 21, 24, 27, 30],
[8, 12, 16, 20, 24, 28, 32, 36, 40],
[10, 15, 20, 25, 30, 35, 40, 45, 50],
[12, 18, 24, 30, 36, 42, 48, 54, 60],
[14, 21, 28, 35, 42, 49, 56, 63, 70],
[16, 24, 32, 40, 48, 56, 64, 72, 80],
[18, 27, 36, 45, 54, 63, 72, 81, 90],
[20, 30, 40, 50, 60, 70, 80, 90, 100]
]
- 1. Porting bibliothèque Windows en utilisant Qt pour MacOSX, événement boucles
- 2. Quel est le problème avec mes boucles imbriquées en Python?
- 3. Accès aux éléments avec des décalages en Python pour .. dans les boucles
- 4. Classer les deux listes en utilisant jQuery
- 5. Convolution de deux fonctions en Python
- 6. Cakephp en utilisant deux modèles
- 7. en utilisant des objets Python en C#
- 8. oauth google en utilisant python
- 9. Deux valeurs d'une entrée en python?
- 10. flash: pour les boucles qui tournent lentement
- 11. Obtenir les lignes de XML en utilisant XPath et Python
- 12. en utilisant les deux: url et: function sur observer_form
- 13. En utilisant ActiveRecord belongs_to avec deux clés
- 14. Code Python pour télécharger une page Web en utilisant JavaScript
- 15. Comment effacer les cookies en utilisant python 2.6.x cookielib
- 16. En utilisant Python Ctypes pour fuzzy.dll ssdeep mais recevoir l'erreur
- 17. en utilisant des malédictions avec raw_input en python
- 18. Recherche d'un fichier Unicode en utilisant Python
- 19. Données POST Python en utilisant mod_wsgi
- 20. En utilisant Python diviser pour raccorder une variable ensemble
- 21. Requête XPath en XML utilisant Python
- 22. SharePoint via SOAP en utilisant Python
- 23. Thread simple en Python 2.6 utilisant thread.start_new_thread()
- 24. La différence entre les boucles
- 25. En python est-il un moyen plus facile d'écrire 6 boucles imbriquées?
- 26. Fonction de comparaison en Python en utilisant lambdas
- 27. Remplacer URL avec un lien en utilisant regex en python
- 28. ## en python utilisant notepad ++ coloration syntaxique
- 29. en utilisant getElementById pour récupérer les styles en CSS
- 30. En utilisant Enum pour en C#
Est-ce un devoir? – Jasiu
Oui, vous avez raison, c'est l'approche correcte. –
ne sais pas quand c'est un devoir ou non, mais ça sonne, s'il vous plaît écrivez-le pour moi. –