तत्वों में सेट अप?

Sep 07 2020

टपल की सूची को देखते हुए जहां एक तत्व एक सेट है:

{{{}, "a"}, {{1}, "a"}, {{2}, "a"}, {{3}, "a"}, {{1, 2}, 
  "a"}, {{1, 3}, "a"}, {{2, 3}, "a"}, {{1, 2, 3}, "a"}}

यह वह कार्य है जो ट्यूपल में अन्य तत्व को दोहराते हुए, नए ट्यूपल्स में सेट को विघटित करता है, अर्थात

{{{{}, "a"}}, {{{1}, "a"}}, {{{2}, "a"}}, {{{3}, "a"}}, {{{1}, 
   "a"}, {{2}, "a"}}, {{{1}, "a"}, {{3}, "a"}}}

?

जवाब

6 kglr Sep 07 2020 at 20:00
lst = {{{}, "a"}, {{1}, "a"}, {{2}, "a"}, {{3}, "a"}, {{1, 2}, "a"}, 
   {{1, 3}, "a"}, {{2, 3}, "a"}, {{1, 2, 3}, "a"}}

Thread[{List /@ # /. {} -> {{}}, #2}] & @@@ lst // Column

वैकल्पिक रूप से,

Tuples[{List /@ # /. {} -> {{}}, {#2}}] & @@@ lst

एक ही परिणाम

5 C.E. Sep 07 2020 at 19:57

मेरा मानना ​​है कि यह वही है जो आप चाहते हैं:

expr /. {
   idxs_ : {__Integer},
   el_
   } :> ({{#}, el} & /@ idxs)

exprआपकी अभिव्यक्ति कहाँ है