निम्नलिखित स्केल सूची को देखते हुए:
val l = List(List("a1", "b1", "c1"), List("a2", "b2", "c2"), List("a3", "b3", "c3"))
मुझे कैसे मिल सकता हैं:
List(("a1", "a2", "a3"), ("b1", "b2", "b3"), ("c1", "c2", "c3"))
चूंकि ज़िप का उपयोग केवल दो सूचियों के संयोजन के लिए किया जा सकता है, मुझे लगता है कि आपको किसी भी तरह मुख्य सूची को पुनरावृत्त करना / कम करना होगा। आश्चर्य नहीं, निम्नलिखित काम नहीं करता है:
scala> l reduceLeft ((a, b) => a zip b)
<console>:6: error: type mismatch;
found : List[(String, String)]
required: List[String]
l reduceLeft ((a, b) => a zip b)
किसी भी एक सुझाव यह कैसे करना है? मुझे लगता है कि मैं इसे करने के लिए एक बहुत ही सरल तरीका याद कर रहा हूं।
अपडेट: मैं एक ऐसे समाधान की तलाश कर रहा हूं, जिसमें प्रत्येक तत्वों के साथ N सूचियों की सूची ले सकते हैं और M TupleNs की सूची बना सकते हैं।
अद्यतन 2: जैसा कि यह पता चला है कि मेरे विशिष्ट उपयोग-मामले के लिए सूचियों की सूची बेहतर है, बजाय टुपल्स की सूची के, इसलिए मैं कद्दू की प्रतिक्रिया को स्वीकार कर रहा हूं। यह सबसे सरल भी है, क्योंकि यह एक देशी विधि का उपयोग करता है।