2016-03-24 20 views
0

Uygulama projesi şu şekildedir: Bunun gibi bir liste değeriniz olduğunu varsayalım: spam = ['elmalar', 'muzlar', 'tofu', 'kediler'] Yazma liste değerini argüman olarak alan ve son öğe ile birlikte ve eklenen bir virgülle ve boşlukla ayrılmış tüm öğeleri içeren bir dizge döndürür. Örneğin, önceki istenmeyen posta listesinin işleve aktarılması 'elma, muz, soya peyniri ve kediler' anlamına gelir. Ancak, işleviniz ona geçirilen herhangi bir liste değeriyle çalışabilmelidir. Şimdiye kadar bu ile geldimATBSWP Bölüm 4 uygulama projesi: Comma Code

:

spam = ['apples', 'bananas', 'tofu', 'cats'] 

def commacode(a_list): 
    a_list.insert(-1, 'and') 
    print(a_list) 

commacode(spam) 

Ve tabii çıkışı sadece liste değerleri olan

. Satır 5 = yazdırma (str (a_list)) yapmaya çalıştım ama bu bir sözdizimi hatası veriyor. Düşünme tarzım, onu bir dizeye değiştirmem gerektiğidir, ama ben kayboldum. Bölümde bir şey mi eksik? Birkaç kez gittiğimi hissettim. Len (a_list) 'in içinde bir yerde olması gerektiğini hissediyorum ama bu bana 5 değerini verecekti. Herhangi bir düşünce ya da bunun hakkında düşünmek için nasıl gitmem gerektiği büyük bir yardım olurdu. Ben her zaman bu şeyleri gerçekten anlıyorum gibi hissediyorum ve sonra bu uygulama projelerine alıyorum ve her zaman ne yapacağım konusunda şaşkınım. Uygulama projelerinin daha önceki bölümlerde öğrendiğimiz bazı bilgileri kullanacağını biliyorum ve daha sonra üzerinde bulunduğumuz bölüme odaklanacağız. Bölüm 4 sadece birkaç isim için listeler, liste değerleri, dize değerleri, kopyalar, copy.copy() ve copy.deepcopy() içerir.

Bağlantı - Chapter4

cevap

0

aşağıdaki commacode fonksiyonunu deneyin:

monty = ['apples', 'bananas', 'tofu', 'cats', 'dogs', 'pigs'] 

def commacode(listname): 
    listname[len(listname) - 1] = 'and ' + listname[len(listname) - 1] 
    index = 0 
    new_string = listname[index] 
    while index < len(listname) - 1: 
     new_string = new_string + ', ' + listname[index + 1] 
     index = index + 1 
     if index == len(listname) - 1: 
      print(new_string) 

commacode(monty) 
İlgili konular