อะไรคือชื่อที่ถูกต้องสำหรับผู้ประกอบการ*
ในขณะที่function(*args)
? แกะคลายซิปมีอะไรอีกไหม
อะไรคือชื่อที่ถูกต้องสำหรับผู้ประกอบการ*
ในขณะที่function(*args)
? แกะคลายซิปมีอะไรอีกไหม
คำตอบ:
ใน Ruby และ Perl 6 นี่เรียกว่า "splat" และฉันคิดว่าคนส่วนใหญ่จากชุมชนเหล่านั้นจะเข้าใจว่าคุณหมายถึงอะไรถ้าคุณเรียกมันว่า
หลามกวดวิชาใช้วลี "เอาออกรายการอาร์กิวเมนต์" ซึ่งมีความยาวและพรรณนา ฉันไม่เคยได้ยินชื่ออื่นมาก่อนใน Python
splatsplat
ผมเสนอ
*
โอเปอเรเตอร์ดังนั้นเราจึงขาดแหล่งข้อมูลอย่างเป็นทางการ ...
ฉันเรียกว่า "การขยายตำแหน่ง" ซึ่งตรงข้ามกับ**
ที่ฉันเรียกว่า "การขยายคำหลัก"
หลามกวดวิชาก็เรียกมันว่าฯ*
-operator ' จะดำเนินการเอาออกจากรายการอาร์กิวเมนต์โดยพลการ
*
-operator' นั้นคลุมเครือตั้งแต่*
- ขึ้นอยู่กับบริบท - สามารถทำการโต้แย้งการขยายตัวหรือการคูณซึ่งเป็นการดำเนินการสองอย่างที่แตกต่างกัน
*
ที่หลุมกระต่ายอื่น) โดยการบอกว่ามัน*-operator
เป็นเพียงการส่งคำถามกลับมาเป็นคำตอบ โอเพ่นอยากรู้วิธีพูดออกมาดัง ๆ (หรือในหัวของเขา) เมื่อเขาพบมัน ทั้งหมดนี้เป็นเรื่องใหม่สำหรับฉันและฉันจะไปกับ "เครื่องหมาย!"
ฉันพูดว่า "star-args" และคน Python ดูเหมือนจะรู้ว่าฉันหมายถึงอะไร
**
เป็นเล่ห์เหลี่ยม - ฉันคิดว่า "qargs" เพราะมันมักจะใช้เป็น**kw
หรือ**kwargs
kwargs
แม้ว่ามันจะไม่ได้อ้างถึงโอเปอเรเตอร์จริงๆ แต่ฉันคิดว่า
หนึ่งยังสามารถโทรรวบรวมพารามิเตอร์ (เมื่อนำมาใช้ในความหมายข้อโต้แย้งฟังก์ชั่น) หรือผู้ประกอบการกระจาย (เมื่อนำมาใช้ในการภาวนาฟังก์ชั่น)*
เท่าที่เห็นนี่: คิดว่างูหลาม / Tuples / ความยาวตัวแปร tuples
ฉันเชื่อว่ามันมักเรียกกันว่า การเปิดออกอาร์กิวเมนต์เป็นสิ่งที่ทำ
ฉันเรียก * args "star args" หรือ "varargs" และ ** kwargs "คำหลัก args"
...
ผู้ประกอบการ