Python'da, bir liste kavrayışında, örneğin
[(x,y) for x in a for y in b]
bazı uygun diziler için a ve b. Python'un liste kavrayışlarının iç içe döngü semantiğinin farkındayım.
Sorum şu: Anlayıştaki bir yineleyici diğerine atıfta bulunabilir mi? Başka bir deyişle: Böyle bir şey alabilir miyim:
[x for x in a for a in b]
dış döngünün geçerli değeri iç iteratör nerede?
Örnek olarak, iç içe geçmiş bir listem varsa:
a=[[1,2],[3,4]]
bu sonucu elde etmek için liste anlama ifadesi ne olur:
[1,2,3,4]
?? (Lütfen sadece anlama cevaplarını listeleyin, çünkü öğrenmek istediğim şey budur).
[x for b in a for x in b]
Bu her zaman python ile ilgili olarak hata yaptı. Bu sözdizimi çok geriye dönük. Genel biçimix for x in y
her zaman değişkeni doğrudan for'dan sonra alır, for'un solundaki ifadeye beslenir. Çift kavrama yaptığınız anda, en son yinelenen değişkeniniz aniden "uzak" olur. Garip ve doğal olarak hiç okumuyor