[Çözüldü] kolay soru counter dan

Başlatan viensdans, 05 Kasım 2016 - 16:00:54

« önceki - sonraki »

0 Üyeler ve 1 Ziyaretçi konuyu incelemekte.

viensdans

print index.values() komutunun ciktisi asagidaki gibi gorunuyor.

[[11, 12], [7], [44], [23], [37, 39, 41, 43, 45]]

ben bunlarin icindeki  4 taneden fazla olanlari bulmak istiyorum . simdiye kadar if len(value)>=4: yapiyordum megerse len karakterleri saydigi icin surekli yanlis sonuc aliyordum. bunlari sayisini nasil ogrenirim.




mrtAkdeniz

"len" fonksiyonu, parametre olarak listeler ve değişkenler grubu (tuples) ve karakter dizisi (string) alabilir. Parametre olarak "__len__()" methoduna erişimi olan bir sınıfın nesnesini (listeler ve değişkenler grubu gibi) alırsa, eleman sayısı; karakter dizisi (string) alırsa karakter sayısını döndürür. Yani kullandığın kontrol mekanizmasında bir sorun yok.

Python versiyonunu ve betiğin tamamını paylaşırsan sorunun çözümünde yardımcı olabilirim.

viensdans

evet tekrar kontrol ettim elemanlari sayiyormus ama baska bir yerde hata var ozaman cunku cikti dogru göstermiyor.
# -*- coding: utf-8 -*-
from collections import Counter
import itertools, collections
ListeA=['it', 'was', 'the', 'besttttttttttttttrtrtrtrtrttrtr', 'of', 'times', 'it', 'was',
'the', 'worst', 'of', 'times', 'it', 'was', 'the', 'age', 'xx', 'xx', 'xx', 'xx', 'xx', 'xx', 'xx', 'xx', 'xx', 'xx'
'of', 'wisdom', 'it', 'was', 'the', 'age', 'of', 'xx'
'foolishness']

#kolay okunsun diye numaralandirdim
#ListeA=[0'it', 1'was', 2'the', 3'besttttttttttttttrtrtrtrtrttrtr', 4'of', 5'times', 6'it', 7'was',
#8'the', 9'worst', 10'of', 11'times', 12'it', 13'was', 14'the', 15'age', 16'xx', 17'xx', 18'xx', 19'xx', 20'xx', 21'xx', 22'xx', 23'xx', 24'xx', 25'xx'
#26'of', 27'wisdom', 28'it', 29'was', 30'the', 31'age', 32'of', 33'xx'
#34'foolishness']

index = collections.defaultdict(list);

for value, key in enumerate(ListeA):
    index[key].append(value)

for key1,value1 in index.items():
    if len(value1)>=4: 
print value1

 
ciktisi bu  sekilde
[0, 6, 12, 27] mesela 27  it olmaliyken wisdom gosteriyor asagidakilerde sorunlu genelde son kisimlar sorunlu sanirim
[16, 17, 18, 19, 20, 21, 22, 23, 24]
[2, 8, 14, 29]
[1, 7, 13, 28

viensdans

neyseki hatayi ögrendim , 2 tane virgul eksikmis