Hoe een subarray te verkrijgen in python 3

Ik wil een subarray in python 3 krijgen. Ik heb het volgende geprobeerd.

a = ['abcdefgh', 'abcdefgh' , 'abcdefgh']
print (a[0][3:6])
print (a[1][2:6])
print  (a[0:2][3:6])

Ik krijg de eerste twee resultaten zoals verwacht. Maar ik krijg niet het gewenste resultaat voor de derde afdruk.

Uitvoer:

def
cdef
[]

Gewenste uitvoer:

def
cdef
['def', 'def']

Kan iemand mij vertellen hoe ik deze kan verkrijgen


Antwoord 1, autoriteit 100%

Gebruik hiervoor lijstbegrip

print ([i[3:6] for i in a[0:2]])

Antwoord 2, autoriteit 9%

Dit zal werken. Het herhaalt elementen op index 0 en 1 en snijdt de array zoals verwacht.

[x[3:6] for x in a[0:2]]

Other episodes