845245015 发表于 2020-11-20 20:55:16

列表处理

现列表1:(("2#-F3AL1" "70kW" "0.85" "0.95") ("2#-F2AL1" "70kW" "0.85" "0.95") ("2#-F1AL1" "70kW" "0.85" "0.95"))
现列表2:(("2#-F1AL1" "WL1" "普通照明 1" "0.416kW") ("2#-F2AL1" "WL1" "普通照明 1" "0.768kW") ("2#-F3AL1" "WL1" "普通照明 1" "0.768kW")
          ("2#-F1AL1" "WC1" "普通插座 1" "1.0kW") ("2#-F2AL1" "WC1" "普通插座 1" "1.0kW") ("2#-F3AL1" "WC1" "普通插座 1" "1.0kW")
          ("2#-F1AL1" "WG1" "公共照明 1" "0.416kW") ("2#-F2AL1" "WG1" "公共照明 1" "0.416kW") ("2#-F3AL1" "WG1" "公共照明 1" "0.416kW"))



目标列表:(("2#-F3AL1" "70kW" "0.85" "0.95" ("WL1" "普通照明 1" "0.768kW") ("WC1" "普通插座 1" "1.0kW") ("WG1" "公共照明 1" "0.416kW"))
          ("2#-F2AL1" "70kW" "0.85" "0.95" ("WL1" "普通照明 1" "0.768kW") ("WC1" "普通插座 1" "1.0kW") ("WG1" "公共照明 1" "0.416kW"))
          ("2#-F1AL1" "70kW" "0.85" "0.95" ("WL1" "普通照明 1" "0.416kW") ("WC1" "普通插座 1" "1.0kW") ("WG1" "公共照明 1" "0.416kW")))

各位大神帮忙看一下,如何这样处理列表,谢谢

wzg356 发表于 2020-11-20 21:08:57

本帖最后由 wzg356 于 2020-11-20 21:20 编辑

(setq l3 nil)
(foreach n l1
        (setq a(car n) c nil)
        (foreach nn l2
                (if(setq b(member a nn))
                        (setq c(cons (cdr b) c))
                )
        )
        (setq l3(cons (append n c) l3))
)

l3为目标表

yshf 发表于 2020-11-23 23:31:53

    (setq B1 '(("2#-F3AL1" "70kW" "0.85" "0.95")
             ("2#-F2AL1" "70kW" "0.85" "0.95")
             ("2#-F1AL1" "70kW" "0.85" "0.95")
              )
    )
    (setq B2 '(("2#-F1AL1" "WL1" "普通照明 1" "0.416kW")
             ("2#-F2AL1" "WL1" "普通照明 1" "0.768kW")
             ("2#-F3AL1" "WL1" "普通照明 1" "0.768kW")
               ("2#-F1AL1" "WC1" "普通插座 1" "1.0kW")
             ("2#-F2AL1" "WC1" "普通插座 1" "1.0kW")
             ("2#-F3AL1" "WC1" "普通插座 1" "1.0kW")
               ("2#-F1AL1" "WG1" "公共照明 1" "0.416kW")
             ("2#-F2AL1" "WG1" "公共照明 1" "0.416kW")
             ("2#-F3AL1" "WG1" "公共照明 1" "0.416kW")
              )
    )
    (setq Jgb (mapcar '(lambda(x)
                            (append x (mapcar 'cdr (vl-remove-if '(lambda(y)(/= (car x) (car y))) B2)))
                      )
                      B1
              )
    )

664571221 发表于 2023-5-16 22:07:57

兄弟你是做什么的
页: [1]
查看完整版本: 列表处理