Je veux imprimer les données d'une chaîne, en sens inverse. L'extrait de code ci-dessous ne fonctionne que pour les nombres à un chiffre: c.-à-d. Il se retourne 19 à 91 ...
def reverse_string(arr):
# Reverse a string quickly
return arr[::-1]
if __name__ == '__main__':
n = int(input())
# str = return string for object input
# " ".join() = drop [] & "" from output
arr = str(" ".join(input().split(" ")))
print((reverse_string(arr)))
3 Réponses :
Vous ne devriez pas convertir l'entrée en int. Je suppose que vous entrerez simplement entier séparé par des espaces, le code suivant vous aidera:
n = input() arr = n.split() print(*reverse_string(arr))
Pourquoi utiliser une compréhension de liste lorsque vous ne modifiez pas Art code> du tout?
@Franciscocouzo, merci bonne prise! Parfois, je suis nerveux en répondant à XD.
Merci à vous deux. :)
Votre code a la bonne idée, mais vous devez rejoindre la liste à une chaîne après l'inversion.
Modification: P>
arr = input().split(" ")
print(" ".join(reverse_string(arr)))
avec compréhension de la liste Vous pouvez transformer en entiers tous les éléments du tableau formé divisé la chaîne: p> sortie (Liste des entiers): P> >>> arr
'2 200 3 43 1 5'
Je suis nouveau, alors mon upvote ne fonctionne pas encore, mais votre commentaire était extrêmement utile. Merci!
Qu'entendez-vous par «la méthode la plus propre»?
Split en mots, inverser la liste. Faire quelques tâches simples d'affilée ne le rend pas spécial. Assurez-vous simplement d'avoir un bon test unitaire. Vous devriez publier votre code et si vous êtes vraiment bloqué, nous pouvons vous aider.
Le code que vous avez mis ici ne fonctionnera pas comme vous l'avez décrit. Je pense que vous avez copié le problème.
n = int (entrée ()) code> doit êtren = entrée () code> etarr = str ("" entrée (). Split ("" )))) code> devrait êtrearr = str ("". Joindre (n.split (""))) code> Pour obtenir la sortie que vous décrivez.Merci les gars! Vos commentaires sont utiles. Par "Clean Code" Je suppose que je viens de dire simple que possible tout en maintenant O (1). :)