SORU
29 Mart 2009, Pazar


Nasıl Ruby bir dizinin bir bölümü geri dönmek için?

Python bir liste ile bunun bir parçası aşağıdaki kodu kullanarak iade edeceğim:

foo = [1,2,3,4,5,6]
bar = [10,20,30,40,50,60]
half = len(foo) / 2
foobar = foo[:half]   bar[half:]

Ruby beri yoksa buna benzer birşeyi varsa merak ediyorum dizide her şey.

CEVAP
29 Mart 2009, Pazar


Evet, Ruby çok benzer dizi-Dilimleme sözdizimi Python için vardır. Burada dizi indeksleme yöntemi için ri belgeler:

--------------------------------------------------------------- Array#[]
     array[index]                -> obj      or nil
     array[start, length]        -> an_array or nil
     array[range]                -> an_array or nil
     array.slice(index)          -> obj      or nil
     array.slice(start, length)  -> an_array or nil
     array.slice(range)          -> an_array or nil
------------------------------------------------------------------------
     Element Reference---Returns the element at index, or returns a 
     subarray starting at start and continuing for length elements, or 
     returns a subarray specified by range. Negative indices count 
     backward from the end of the array (-1 is the last element). 
     Returns nil if the index (or starting index) are out of range.

        a = [ "a", "b", "c", "d", "e" ]
        a[2]    a[0]   a[1]    #=> "cab"
        a[6]                   #=> nil
        a[1, 2]                #=> [ "b", "c" ]
        a[1..3]                #=> [ "b", "c", "d" ]
        a[4..7]                #=> [ "e" ]
        a[6..10]               #=> nil
        a[-3, 3]               #=> [ "c", "d", "e" ]
        # special cases
        a[5]                   #=> nil
        a[5, 1]                #=> []
        a[5..10]               #=> []

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Booredatwork.com

    Booredatwork

    5 Ocak 2009
  • Huot Media

    Huot Media

    7 Mayıs 2010
  • iZAPPA

    iZAPPA

    16 Temmuz 2010