Döngüden değişken oluşturmak

Merhaba

cu=['akif kabak yedi', 'kim kabak yedi', 'ömer kabak yedi', 'ömer kara kabak yedi', 'emel kabak yedi']
#listeyi string'e çevirip elemanlarını almak istiyorum.
aa="".join(cu[0])
bb="".join(cu[1])
cc="".join(cu[3])
dd="".join(cu[4])
ee="".join(cu[5])
# for i in len(cu):
#    aa="".join(cu[i])
#bu döngü bana hep "aa" verecek, halbuki ben yukarıdaki sonucu istiyorum. Nasıl yapabilirim?

Yardım lütfen.Teşekkürler.

Çok basit :grinning:

listemiz = list()
for i in len(cu):
    aa="".join(cu[i])
    listemiz.append(aa)

Kolay gelsin :slight_smile:

Teşekkürler.
for i in range(len(cu)): olarak düzelttim, “TypeError: ‘int’ object is not iterable” hatası veriyordu. Ama ben yalnızca “aa” değeri değil, “bb”, “cc”, “dd”, “ee” değerlerini de ayrı ayrı almak istiyorum.

Biraz daha ne istediğinizi açabilirmisiniz ?

Listedeki her elemanı ayrı ayrı değişkenlere bağlamak istiyorum.cu[2] gibi ifadeler işime yaramıyor, çünkü liste elemanları program içinde dinamik olarak seçilip başka fonksiyona girdi olacaklar. Programlamada yeniyim ve iki tam gün harcayıp çözemedim. İlginize teşekkürler, umarım yardımcı olursunuz.

Merhabalar hocam yanliş anlamadiysam dinamik değişken tanımlamak istiyorsunuz.

cu=['akif kabak yedi', 'kim kabak yedi', 'ömer kabak yedi', 'ömer kara kabak yedi', 'emel kabak yedi']
dinamikDegisken = {}
arti = 0
for i in cu:
    dinamikDegisken["a"+str(arti)] = i
    arti+=1


# Ekrana bastırma :

for i,j in zip(dinamikDegisken.keys(),dinamikDegisken.values()):
    print("{}  :  {}".format(i,j))


çıktı :

a0 : akif kabak yedi
a1 : kim kabak yedi
a2 : ömer kabak yedi
a3 : ömer kara kabak yedi
a4 : emel kabak yedi

1 Beğeni

Çok teşekkür ederim, bu sorunumu çözüyor. Yeni soru bağlantılı olduğu için yeni konu açmıyorum. elde ettiğimiz

a0 : akif kabak yedi
a1 : kim kabak yedi
a2 : ömer kabak yedi
a3 : ömer kara kabak yedi
a4 : emel kabak yedi

çıktısından, pseudokod:

zz=set(a0).difference(a1)
xx=set(a1).difference(a2)
cc=set(a2).difference(a3)
vv=set(a3).difference(a4)
nn=set().union(zz,xx,cc,vv)
for i in nn:
    if i=="ömer" or i=="ömer kara":
        continue
    print(i)

“akif, kim, emel”
çıktısını almak istiyorum.
Eğer " dinamikDegisken" sözlüğünün max(a), yani burada (a4) değerini biliyorsam len(dinamikDegisken), sözlüğü listeye çevirerek yukarıdaki kodlar işe yarıyor. Ama sanırım bu hayli uzun bir yol. Daha kısa bir yolu var mı acaba?

Lîsteyê çevirmeniz gerekmez yukarıda çıktı almak için yazdığımız for dongusunu sadece values değerleri alıp işlem yapabilirsiniz.

Teşekkür ederim, emeğinize, zihninize sağlık!

1 Beğeni