Python 108 ตัวอักษร
Python ไม่ได้ถูกสร้างขึ้นสำหรับความท้าทายนี้ ต้องการที่จะprint? สงวนไว้ แล้วเราใช้กันยังstdoutไงดี? มันจะมีค่าใช้จ่ายimport... คุณคาดเดาไว้สงวนไว้ ดี ... ฉันอยู่บนระบบยูนิกซ์ดังนั้นฉันจึงสามารถเปิดไฟล์ descriptor 1 ซึ่งเป็น stdout ได้ สับ!
มนุษย์และซ้ำ? ไม่มีอะไรevalนอกจาก ไม่มีห่วงแน่นอน แต่เราไม่สามารถแม้แต่จะกำหนดฟังก์ชั่นที่มีหรือdef lambdaและเพื่อเพิ่มการดูถูกการบาดเจ็บเราไม่สามารถแม้แต่ใช้ความเข้าใจในรายการ! ฉันมักจะมองหาข้ออ้างที่จะใช้สิ่งต่าง ๆ เช่นmap(p.__mod__,...)ใน code golf ... ความเข้าใจจะดีขึ้นเสมอ จนถึงตอนนี้ก็คือ
p=1
eval(compile("p+=1;open('/dev/fd/1','w').write('%s '%p*all(map(p.__mod__,range(2,p))));"*720,'','exec'))
ตอนนี้คุณอาจบ่นว่าexecเป็นคำหลักแม้ว่าฉันไม่ได้ใช้คำหลัก (ฉันไม่ได้evalเป็นแม้แต่exec) ดีที่นี่เป็นทางออกที่ 117 'exec'ตัวอักษรที่ไม่ได้ใช้
p=2
s="eval('('+s*(p<720)+')',open('/dev/fd/1','w').write('%s '%p*all(map(p.__mod__,range(2,p)))),{'p':p+1})";eval(s)