Bonjour
J'ai une liste = ['1234'], j'aimerais obtenir ['2341'], ['3412'], ['4123']
Sans utiliser "for", ni "while". J'ai essayé le décalage "x >> 1", mais le résultat ne correspond à mon attente.
Est-ce possible ?
Version imprimable
Bonjour
J'ai une liste = ['1234'], j'aimerais obtenir ['2341'], ['3412'], ['4123']
Sans utiliser "for", ni "while". J'ai essayé le décalage "x >> 1", mais le résultat ne correspond à mon attente.
Est-ce possible ?
Salut,
Vous pouvez utiliser la fonction roll de numpy:
mais l'appliquer un certain nombre de fois va passer par une boucle.Code:
1
2
3
4
5 >>> import numpy as np >>> ar = np.array([1,2,3,4]) >>> np.roll(ar, 1) array([4, 1, 2, 3]) >>>
De toutes façon pour fabriquer 3 objets à partir de [1, 2, 3, 4] soit vous écrivez 3 lignes de code qui calculent les différents objets, soit vous écrivez une boucle.
- W
Bonjour :)
J'ai trouvé une solution dans un autre site
Les print'sCode:
1
2
3
4
5
6 c = [1, 2, 3] print(c) c.insert(0, c.pop()) print(c) c.insert(0, c.pop()) print(c)
Code:
1
2
3 [1, 2, 3] [3, 1, 2] [2, 3, 1]