2016-04-08 22 views
1

Dizeleri olan bir liste listesi verildiğinde sorun yaşıyorum. Ben ters bir şekilde dizeleri hem de listelerin çıktı listesini sadece ters zorundaDize karakterleri içeren listenin listesini geri döndürme

Örnek:

input_list = [["CAT", "BAT", "SAT"], ["MAN","CHAN", "LAN"], ["CAL", "NJ","NYC"]] 

BEKLENEN SONUÇ:

[["CYN", "JN", "LAC"], ["NAL", "NAHC", "NAM"], ["TAS", "TAB", "TAC"]] 

Kod ben çalışıyorum:

doc_file = [["CAT", "BAT", "SAT"], 
      ["MAN","CHAN", "LAN"], 
      ["CAL", "NJ","NYC"]] 
temp_list = [] 
temp_list2 = [] 
#print("reversing First Line:") 
rev_main_list = list(reversed(doc_file)) 
#print(rev_main_list) 
for i in range(len(rev_main_list)): 
    for j in range(len(rev_main_list[i])): 
     # print("value of i:", i) 
     # print("value of j:", j) 
     temp_list.append((rev_main_list[i][j][::-1])) 
    #print("outer loop i:", i) 
    temp_list2.append(temp_list[i]) 
    rev_main_list =temp_list2 
    print(rev_main_list) 

Yardımınız için teşekkür ederiz

cevap

1
def reverse_it(a): 
    if isinstance(a,(list,tuple)): 
     return [reverse_it(x) for x in a[::-1]] 
    return a[::-1] 
+0

Teşekkürler, İyi bir düzeltme olmalı, ancak burada daha fazla neler yapıldığını gözlemlemelisiniz. – SanBan

0
for small_list in big_list: 
    for x in small_list: 
     x = x[::-1] 
    small_list.reverse() 
big_list.reverse() 

aksak bir düzeltmenin Bit, ama senin için çalışması gerekir.

+0

Aynı çizgide düşündüm. Ama benim çözümüm zarif görünmüyor: – SanBan

+0

doc_file = [["CAT", "BAT", "SAT"], ["MAN", "CHAN", "LAN"], ["CAL", "NJ" "NYC"]] inner_rev = [] baskı ("ORIGINAL_INPUT:") baskı (doc_file) baskı ("####") rev_main_list = listesi (ters (doc_file)) further_reverse = [listesi (ters further_reverse for i in rev_main_list içinde sub_list] için (sub_list)): inner_rev.append ([sub_list_2 [:: - 1] i sub_list_2]) baskı ("nihai çıkışı:" için) baskı (inner_rev) – SanBan

+0

değil Çalışma . Aldığım çıktı: [['NYC', 'NJ', 'CAL'], ['LAN', 'CHAN', 'MAN'], ['SAT', 'BAT', 'CAT']] – SanBan

İlgili konular