* operatörü için doğru ad?


210

Operatör için doğru adı nedir *gibi function(*args)? açmak, açmak, başka bir şey?


9
Javascript eşdeğer yayılma ... operatörüne sahiptir.
Wolfgang Kuehn

Yanıtlar:


170

Ruby ve Perl 6'da buna "splat" deniyordu ve bence bu topluluklardan çoğu insan buna böyle diyorsan ne demek istediğini anlayacak.

Python öğretici uzun ve açıklayıcı ifadesini "argümanı listeleri açma" kullanır. Python'da bunun için başka bir isim duymadım.


90
python kullanarak yaklaşık 10 yıl içinde hiç bir zaman "splat" duymadım / görmedim.
Joe Koberg

8
Python'da argüman listelerini paketlemek için de kullanılır , bu yüzden bu bağlamda splat olarak adlandırılmalı ? :)
John La Rooy

45
@ THC4k öneriyorum splatsplat.
Josh Lee

5
Ne yazık ki INTERCAL'in *bir operatörü yok , bu yüzden resmi bir kaynaktan yoksun ...
wberry

3
JavaScript'te (es2015) forma operatörü olarak bilinir .
Kutyel


49

Python Kılavuzu basitçe 'diyor *-Operatör'. İsteğe bağlı argüman listelerinin paketini açar .


1
Bu en doğru cevap ve kabul edilmediği bir utanç!
alfasin

3
@alfasin: ' *-operator' ifadesi belirsiz - çünkü *bağlama bağlı olarak - iki farklı işlem olan bağımsız değişken genişletme veya çarpma gerçekleştirebilir.
HelloGoodbye

1
@HelloGoodbye ve içerdiği bağlamdan hangisinin olduğunu anlamak gerçekten zor değil.
alfasin

OP'nin nasıl zamir verileceğini soruyor gibi görünüyor (ki bu bir kelimenin kendisi olabilir veya olmayabilir - bu başka bir tavşan deliği) *. Bunu söyleyerek *-operatorbasitçe soruyu cevap olarak geri atıyor. OP muhtemelen karşılaştığında bunu yüksek sesle (veya kafasında) nasıl söyleyeceğini bilmek istiyordu. Bunların hepsi benim için yeni ve ben "uyar!"
elPastor

17

Ben "yıldız-arg" diyorum ve Python insanlar ne demek istediğimi biliyor gibi görünüyor.

**yanıltıcıdır - genellikle olarak kullanılan bu yana sadece "qargs" düşünmek **kwveya**kwargs


2
Ben de diyorum ki kwargs, bu gerçekten sanırım operatörün kendisine değinmiyor.
TM.

14

Ayrıca *bir toplama parametresi (fonksiyon argümanları tanımında kullanıldığında) veya bir dağılım operatörü ( fonksiyon çağırmada kullanıldığında) çağrılabilir.

Burada görüldüğü gibi: Python / Tuples / Değişken uzunlukta argüman tupleslerini düşünün .


1
ancak
SPLAT

@SamanthaBranham Toplama ve saçılmanın nasıl kolayca ve belirgin bir şekilde görselleştirilebileceğini seviyorum. Tabii ki splat da büyük görselleştirir 😂💥
Anton Strogonoff


1

* Args "star args" veya "varargs" ve ** kwargs "anahtar kelime args" diyorum.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.