Python'da liste anlama özelliğini kullanarak bir listeyi düzleştirmeye çalışıyorum. Benim listem biraz ben alıyorum liste anlama yoluyla listemi düzleştirmek için aynı mantığı kullanılan Sonraliste anlaşması listeden listenin listesini göster
def flat(listoflist):
for item in listoflist:
if type(item) != list:
print item
else:
for num in item:
print num
>>> flat(list1)
1
2
3
4
5
6
7
8
bu kodu yazdım sadece listenin bu listede baskı daha sonra tek tek öğe için
[[1, 2, 3], [4, 5, 6], 7, 8]
gibidir aşağıdaki hata
list2 = [item if type(item) != list else num for num in item for item in list1]
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'int' object is not iterable
Liste türünü kullanarak bu liste liste türünü nasıl düzleştirebilirim?
Bu, 2.x kullanan asker için harikadır, ancak 3.x kullanıcılarının yerine str'yi kullanması gereken bir nottur. 'basestring'. –
@Ashwini Öğelerim tamsayı yerine tipte ise, ne yapılmalı? –
@AnuragSharma küçük örnek? –