[generator] ile etiketlenen soru

Pythonically bir listedeki tüm değerleri nasıl veririm?

Diyelim ki, geri dönmek istemediğim, ancak değerlerini vermek istediğim bir liste var. Bunu yapmanın en pythonic yolu nedir? İşte demek istediğim. Bazı tembel hesaplamalar sayesinde listeyi hesapladım ['a', 'b', 'c', 'd'], ancak projedeki kodum tembel hesaplamayı kullanıyor, bu yüzden tüm lis...



Bir Python üretecinin StopIteration yerine None döndürmesini nasıl sağlayabilirim?

Bu basit örnekteki gibi listelerde arama yapmak için jeneratör kullanıyorum: >>> a = [1,2,3,4] >>> (i for i, v in enumerate(a) if v == 4).next() 3 (Örneği biraz çerçevelemek için, yukarıdakiyle karşılaştırıldığında çok daha uzun listeler kullanıyorum ve girişler biraz...



Bir jeneratöre atılan istisnayı ele al

Bir jeneratöre ve onu tüketen bir işleve sahibim: def read(): while something(): yield something_else() def process(): for item in read(): do stuff Jeneratör bir istisna atarsa, bunu tüketici işlevinde işlemek ve daha sonra tükenene kadar yineleyiciyi tüket...



Belirli bir aralıktaki rastgele bir sayıyı nasıl oluşturabilirim?

Eclipse kullanarak Android'de rastgele bir sayı üreten bir uygulamayı nasıl oluşturabilir ve sonucu bir TextViewalanda nasıl gösterebilirim ? Rasgele sayı, kullanıcı tarafından seçilen bir aralıkta olmalıdır. Böylece, kullanıcı aralığın maks. ...



Bir jeneratörü önceden yürümeden parçalara ayırın

(Bu soru ile ilgilidir bu bir ve bu bir , ancak bu ön yürüyen tam olarak ben kaçınmak istediğim şey bu jeneratör,) Bir jeneratörü topaklara bölmek istiyorum. Gereksinimler: topakları doldurmayın: Kalan elemanların sayısı topak büyüklüğünden az ise, son topak daha küçük olmalıdır. Jenera...



Python listesinden ilk benzersiz öğenin alınması

Elementlerin tekrar edebileceği bir python listem var. >>> a = [1,2,2,3,3,4,5,6] nListeden ilk benzersiz öğeleri almak istiyorum . Yani, bu durumda, ilk 5 benzersiz öğeyi istersem, bunlar: [1,2,3,4,5] Jeneratör kullanarak bir çözüm buldum: def iterate(itr, upper=5): ...



Google tarzı Sphinx kullanarak listeleri, seçenekleri ve verimleri nasıl belgelemeliyim? [kapalı]

Kapalı . Bu soru görüşe dayalı. Şu anda cevapları kabul etmiyor. Daha fazlasını öğren . ...



Node.js verimi destekliyor mu?

Jeneratörleri node.js'e dahil etmenin bir yolu var mı ? Şu anda onları geri aramalarla taklit ediyorum, ancak jeneratör işlevimin içindeki geri aramanın yanıtını kontrol etmeyi hatırlamak zorundayım. if (callback(arg) === false) return; Python gibi bir şey istiyorum: for p in primes(): ...



Python 3.3'teki verim ile birlikte jeneratöre dönüş

Python 2'de, geri dönüş fonksiyon tanımında verim ile birlikte olduğunda bir hata oluştu. Ancak Python 3.3'teki bu kod için def f(): return 3 yield 2 x = f() print(x.__next__()) verimde fonksiyonun geri dönüşünde kullanılan bir hata yoktur. Ancak işlev __next__çağrıldığında, St...



Bir jeneratörün daha yeni başladığını nasıl söyleyebilirim?

is_just_startedAşağıdaki gibi davranan bir işlev istiyorum: >>> def gen(): yield 0; yield 1 >>> a = gen() >>> is_just_started(a) True >>> next(a) 0 >>> is_just_started(a) False >>> next(a) 1 >>> is_just_started(a) Fa...



Generator.throw () ne işe yarar?

PEP 342 (Geliştirilmiş Jeneratörler yoluyla Koroinler)throw() , jeneratör nesnesine, arayan kişinin jeneratörün içinde bir istisna yaratmasına izin veren ( yieldifade tarafından atılmış gibi ) bir yöntem ekledi . Bu özellik için kullanım durumlarının ne olduğunu merak ediyorum. ...



Bir Python jeneratör nesnesi nasıl klonlanır?

Bu senaryoyu inceleyin: #! / usr / bin / env python # - * - kodlama: utf-8 - * - ithal os walk = os.walk ('/ ev') root, dirs, walk dosyaları: dizin + dosyalarındaki yol adı için: baskı os.path.join (kök, yol adı) root, dirs, walk dosyaları: dizin + dosyalarındaki...



Python'da verim kırılması

Bu sorunun cevabına göre , C # 'daki verim kırılması python cinsinden dönüşe eşdeğerdir. normal durumda, 'return' gerçekten bir jeneratörü durdurur. Fakat eğer işleviniz hiçbir şey yapmazsa geri dönerse, bir Yok elde edersiniz, boş bir yineleyici elde edersiniz, bu da C # da verim sonu ile döndü...



Bu lambda / verim / jeneratör anlama anlayışı nasıl çalışır?

Bugün kod tabanımı inceliyordum ve şunu buldum: def optionsToArgs(options, separator='='): kvs = [ ( "%(option)s%(separator)s%(value)s" % {'option' : str(k), 'separator' : separator, 'value' : str(v)} ) for k, v in options.items() ] ...



Bir sözlük sözlüğünün kartezyen ürünü

Bir sürü girdi parametresinin Kartezyen ürününü test etmek için bazı kodlar yazmaya çalışıyorum. Ben baktım itertools, ama productişlevi tam olarak istediğim şey değil. Her bir değerde rasgele sayıda anahtar ve rasgele sayıda öğenin bulunduğu bir sözlüğü almak ve ardından bir sonraki izinle b...