J'utilise la ligne unique de code Python suivant pour imprimer un motif spécifique que j'ai montré en bas.
Mon code: P>
1 1 1 2 1 3 1 4 2 1 2 2 2 3 2 4
3 Réponses :
aller pour: 0 0 p>
0 1 p>
0 2 p>
1 0 p>
1 1 p>
1 2 p>
... p>
blockQuote> p>
f '{A} {b}' Souhaitez-vous s'il vous plaît élaborer ces rôle?
@Kittomi Ceci est une chaîne F-Python, ceci est comme une chaîne, mais tout mettre entre {} code> est évalué par ex. Imprimer (F'1 + 2 = {1 + 2} ') Code> Imprime' 1 + 2 = 3 '
* F-Strings ont été introduits dans Python 3.6, pas 3.7
Une autre chose que d'autres réponses ne sont pas en compte, c'est que, afin d'avoir le schéma que vous recherchez, la plage devrait commencer à 1 et A et B devrait changer de place.
print(*["{} {}".format(a,b) for a in range(1, 3) for b in range(1, 5)], sep='\n')
Les compréhensions de la liste sont destinées à créer une liste. Pas pour itération d'un appel à imprimer.
Vous avez raison. J'ai édité la réponse. Cela fonctionne de toute façon, mais il est plus propre de cette façon.
Vous avez effectué deux erreurs de syntaxe dans votre compréhension de la liste
dans une compréhension de la liste La boucle de la liste n'est pas une expression, donc vous n'écrivez pas le côlon Vous souhaitez stocker une chaîne dans la compréhension de la liste. L'expression stockée par la compréhension de la liste ne fait pas partie de la fonction d'impression. Il existe plusieurs façons de construire la chaîne. Dans ce cas, F-Strings est une bonne solution. P> La syntaxe correcte est p> si une compréhension de liste devient trop longue, j'ai tendance à le diviser sur plusieurs lignes. p> : p>
De nos jours, les réponses fournissent uniquement des solutions, pas des explications. Ainsi: Pourquoi une erreur de syntaxe? B> La compréhension de la liste ne permet pas 1) des tuples sans entreenthèses (en raison de virgules que l'homme peut interpréter mal), 2) des virgules et des deux points dans des endroits étranges (avant / après , ici: des virgules entre B et pour, du côlon entre deux Forts). Cela le ferait:
Imprimé (* [([(A, B) pour une plage (5) pour B dans la plage (3)], SEP = '\ N') code> Bien sûr que ne résout que le Erreur, pas le formatage - mais le formatage des chaînes a déjà été expliqué par d'autres. :)