list - Python: if element1 from list1 is equal to element2 from list2, change element1 -
This is part of the homework for my 'Basics of Programming' course in UNI. It says: < Blockquote>
 enter a   I tried to solve it like this:    [code modified]: now output is [] any ideas?       Try it, it works.    If you want the match to be insensitive.   code (list, cod)  function, where  lst  is a series of strings  ccccyyyymmgg  ( cccc < / Code> are random characters,  yyyymmgg  is a date) and  cods  is a series of 4-letter string. The function should work like this: If a CCCC in the CSCC is equal to the string in the CSS, the element with the CCCC is printed in [[CCCC, DD, MM, YAY] format; Otherwise it is printed in [[ccccyyyymmdd]] [[ccccyyyymmdd]]. For example, if  "AcDa20140930"  is an element of  lst  and , ACDA " is turned on  cods , Then the  "acDa20140930"  to  lst  4 elements  "ACDA", 30, 9, 2014. . < / P>   
 Def code (list, cod): for code in ccsc: lst1 = [] in element Lst: cccc = lst [0: 3] yyyy = lst [4: 7] mm = lst [8: 9] dd = lst [10:11] If cccc = '' code: lst1 + cccc, dd, mm, yyyy return lst1 first = ['Kara 20130716', 'Tara 20080601', 'Pala19991231', 'Melo1960103'] seconds = [' Printed code (first, second)    Resolution # 1:  
 Demo [ Edit]  
 code:  
 
 DIF codes (list, cod): toAdd = [] c = 0 for ind, calculation in AMM: if hand [ : 4] No codes: toAdd.append (elem + str (ind + c)) lst.remove (elem) c + = 1 for index, amm enumetre (lst): tmp = [] Tmp.append (elem [ : 4]) tmp.append (elem [10:]) tmp.append (elem [8:10]) tmp.append (elem [4] : 8]) lst.insert (ind, Tmp) lst.remove (elem) [ld] [lst.insert (int (elem [-1]), elem [: len (elem) - 1]) AMAD] return lst first = ['Cara20130716', 'Tara 20080601', 'Pala19991231', 'Melo1960103'] Second = ['Pala', 'Cara', 'Tara'] Print Code (First, Second)  < / pre>  Output:  
 ['Kara 20130716', ['Tara', '01', '06', '2008'], ['Pala', '31 ',' 12 Solution # 2:  
 on the demo  
 code:  
 
 DIF codes (list, cod): for r ind, cods in cumer (cods): cods [ ind] = cod.lower () to add = [] c = 0 ind, amm enumerate (lst): if elem [: 4]. : toAdd.append (elem + str (ind + c)) lst.remove (elem) c + = 1 for index, amm enumerate (lst): tmp = [] tmp.append (elem [: 4]) tmp Endem (AMM [10:]) TMPAPEND (AMM [8:10]) TMPAPEND (AMM [4: 8]) lst.insert (IND, TMP) lst.remove (elem) [lst.insert (int (Elem [ 1]), elem [: AMAD] in lane (elem) - 1] Return lst first = ['Kara 20130716', 'Tara 20080601', 'Pal 1 99 631', 'Melo1960103'] Seconds = [' Output:   
 [['Kara', '16', 'CARA', 'Tara'] Print code '' 7 ',' 2013 '], [' Tara ',' 01 ',' 06 ',' 2008 '], [' Pala ',' 31 ',' 12 ',' 1996] ',' Melo 19601023 '] < / Code>   
 
  
Comments
Post a Comment