Disons que j'ai un tableau
[0, 132, 432, 342, 234]
Quelle est la façon la plus simple de se débarrasser du premier élément? (0)
ruby-on-rails
ruby
NullVoxPopuli
la source
la source
Réponses:
"pop" le premier élément d'un tableau est appelé " shift " ("unshift" étant l'opération consistant à ajouter un élément devant le tableau).
la source
nil
sur un tableau vide. Voirdrop
pour une alternative, comme mentionné dans l'autre réponse.et en plus:
la source
[].drop(1) => []
shift
mute le tableau en place et renvoie l'élément décalé (ounil
si le tableau était vide)Utilisez la
shift
méthode sur le tableauSi vous souhaitez supprimer n éléments de départ, vous pouvez utiliser
x.shift(n)
la source
Donc contrairement à
shift
ouslice
cela retourne le tableau modifié (utile pour un liners).la source
[][1..-1] => nil
et non[]
.[1,2,3].shift
un one-liner?arry[1..-1] || []
. Mais arry.drop (1) est encore mieux.C'est assez soigné:
Comme indiqué dans les commentaires, il y a un avantage à ne pas muter la liste d'origine.
la source
(let ((head (car mylist)) (tail (cdr mylist)) ...)
header, *properties = CSV.read(file_path,encoding: 'ISO-8859-1')
ou
a.delete_at 0
la source
Utiliser la méthode shift
https://ruby-doc.org/core-2.2.0/Array.html#method-i-shift
la source
Vous pouvez utiliser:
tranche! se généralise à n'importe quel index ou plage.
la source
Vous pouvez utiliser la méthode Array.delete_at (0) qui supprimera le premier élément.
la source
unless x.empty?
soit nécessaire. Il retourne simplementnil
si l'index est hors limites.Vous pouvez utiliser:
Les deux peuvent fonctionner
la source
Vous pouvez utiliser:
arr - [arr[0]]
ou bienarr - [arr.shift()]
ou simplementarr.shift(1)
la source