2012-11-02 14 views
7

Utworzono listę flowerspodmenu w formie listy

>>> flowers = ['rose','bougainvillea','yucca','marigold','daylilly','lilly of the valley'] 

Następnie

miałem przypisać do listy thorny z podmenu listy flowers składający się z RST fi trzy obiekty na liście.

To co próbowałem:

>>> thorny = [] 
>>> thorny = flowers[1-3] 
>>> thorny 
'daylilly' 
>>> thorny = flowers[0-2] 
>>> thorny 
'daylilly' 
>>> flowers[0,1,2] 
Traceback (most recent call last): 
    File "<pyshell#76>", line 1, in <module> 
    flowers[0,1,2] 
TypeError: list indices must be integers, not tuple 
>>> thorny = [flowers[0] + ' ,' + flowers[1] + ' ,' + flowers[2]] 
>>> thorny 
['rose ,bougainvillea ,yucca'] 

Jak mogę dostać tylko 3 pierwsze obiekty lista kwiatów, zachowując wygląd listy wewnątrz liście?

+2

Kawałek zapis odbywa się z dwukropkiem, a nie znakiem minus. –

Odpowiedz

13

Odcinanie notacja jest [:3] nie [0-3]:

In [1]: flowers = ['rose','bougainvillea','yucca','marigold','daylilly','lilly of the valley'] 

In [2]: thorny=flowers[:3] 

In [3]: thorny 
Out[3]: ['rose', 'bougainvillea', 'yucca'] 
1

Proszę bardzo:

thorny = flowers[0:3] 
2

będziemy chcieli zrobić flowers[0:3] (lub równoważnie flowers[:3]). Jeśli zrobiłbyś na przykład flowers[0-3], byłby to odpowiednik flowers[-3] (tj. Trzeci do ostatniego elementu w flowers.).

+0

Wreszcie, odpowiedzi, które określa, jak ustawić offset dla krojenia! – gsamaras

6

W Pythonie

thorny = flowers[1-3] 

Odpowiada flowers[-2] ponieważ (1 - 3 ==-2), co oznacza, że ​​patrzy się od końca tej liście, to znaczy - 2. Element od końca - np daylilly ...

do podzielenia się (ale nie włącznie) pierwsze 3 elementy, można użyć thorny = flowers[:3], a jeśli chciał wszystko po tym, to jest flowers[3:].

Mieć przeczytać na Pythonie krojenie

0

Nie może być 3 możliwe podmenu typy dla danej listy:

e1 e2 e3 e4 e5 e6 e7 e8 e9 e10  << list elements 
|<--FirstFew-->|  |<--LastFew-->| 
     |<--MiddleElements-->| 
  1. FirstFew są najczęściej przedstawiane przez ve indeksów.

    First 5 elements - [:5]  //Start index left out as the range excludes nothing. 
    First 5 elements, exclude First 2 elements - [2:5] 
    
  2. LastFew są najczęściej przedstawiane przez -ve indeksów.

    Last 5 elements - [-5:]  //End index left out as the range excludes nothing. 
    Last 5 elements, exclude Last 2 elements - [-5:-2] 
    
  3. MiddleElements mogą występować zarówno wskaźnik dodatniej i ujemnej.

    Above examples [2:5] and [-5:-2] covers this category. 
    

tylko 3 pierwsze obiekty lista kwiatów

[0 : 3] //zero as there is nothing to exclude. 
or 
[:3]