ถาม:วิธีการแมปฟังก์ชันใดในรายการคุณสมบัติคืออะไร
ฟังก์ชั่นการทำแผนที่ต่างๆ ( mapcar
และครอบครัว) แมปฟังก์ชั่นมากกว่าลำดับเช่นรายการ เราจะใช้ฟังก์ชั่นเหล่านี้เมื่อจัดการกับรายการคุณสมบัติได้อย่างไรเช่นเมื่อพยายามแมปกับคุณสมบัติแต่ละรายการที่มีอยู่ในรายการ (ซึ่งจะเป็นองค์ประกอบอื่น ๆ ที่เริ่มต้นจากองค์ประกอบแรก) สำหรับผมแล้วดูเหมือนว่าฟังก์ชั่นการแมปจะต้องเข้าถึงรายการในคู่ขององค์ประกอบมากกว่าเป็นองค์ประกอบของแต่ละบุคคล
ในฐานะที่เป็นตัวอย่างของเล่นคนหนึ่งจะใช้รายการทรัพย์สินและรวบรวมค่าคุณสมบัติทั้งหมดได้อย่างไร ถ้ามันเป็นรายการเชื่อมโยงแทนมันจะค่อนข้างง่าย:
(mapcar #'cadr '((:prop1 a) (:prop2 b) (:prop3 c))) ;=> (a b c)
ฉันแน่ใจว่าสิ่งนี้สามารถทำได้ด้วยการวนรอบ แต่ดูเหมือนว่าจะลำบากเล็กน้อยและฉันสงสัยว่ามีวิธีใช้สำนวนมากกว่านี้หรือไม่
mapcar
ตัวอย่างของalist ของคุณหรือไม่) หรือคุณต้องการแมปผ่านคู่ของสัญลักษณ์คุณสมบัติและค่าคุณสมบัติ หลังมีทั่วไปมากขึ้น (มีประโยชน์มากกว่าโดยทั่วไป) ฉันเดา