9
การปิดคำศัพท์ทำงานอย่างไร
ขณะที่ฉันกำลังตรวจสอบปัญหาที่ฉันมีเกี่ยวกับการปิดคำศัพท์ในรหัส Javascript ฉันมาพร้อมปัญหานี้ใน Python: flist = [] for i in xrange(3): def func(x): return x * i flist.append(func) for f in flist: print f(2) lambdaหมายเหตุว่าตัวอย่างนี้สติหลีกเลี่ยง มันพิมพ์ "4 4 4" ซึ่งน่าแปลกใจ ฉันคาดหวัง "0 2 4" รหัส Perl ที่เทียบเท่านี้ไม่ถูกต้อง: my @flist = (); foreach my $i (0 .. 2) { push(@flist, sub …