2014-12-05 37 views
9

Bu, tüm değerleri iç içe bir listede (Python ile önce Head'den alınan) yazdırmak için kullanılan bir işlevdir.Python: deyim baskısında son = '' ifadesi (" t", end = '')

def printall(the_list, level): 
    for x in the_list: 
     if isinstance(x, list): 
      printall(x, level=level + 1) 
     else: 
      for tab_stop in range(level): 
       print("\t", end='') 
     print(x) 

İşlev düzgün çalışıyor.

Bu işlev temel olarak bir listedeki değerleri yazdırır ve iç içe geçmiş bir liste varsa, bir sekme boşluğu ile yazdırır.

Sadece daha iyi bir anlayış için, end=' ' ne yapar? Ben Python 3.3.5

kullanıyorum

ile desteklemediği 2.6 fileinput itibariyle

f = fi.input(files = 'test2.py', inplace = True, backup = '.bak') 
for line in f: 
    if fi.lineno() == 4: 
     print line + '\n' 
     print 'extra line' 
    else: 
     print line + '\n' 

2,7 için. Bu kod 3 satır daha ekler ve eklenmiş metni 3. yeni satırda yazdırır. ve daha sonra 16 boş satır ekler.

cevap

24

end varsayılan değeri print deyimi sonra yeni bir satır yazdırmak olacağı \n anlamıdır. print()

end içeriği: print ("hello",end=" +")hello +

+6

Aspergelerim çıkışı "hello +" olarak ayarlamamı istiyor. – smassey

+1

@smassey Evet, ama problem bir uzay vermiş olsa bile, bu gösterilmiyor :( –

+1

Gerçekten sadece bitip bitmiyor aslında bir satırsonu eşittir 'end = ''' aslında ifadesinin sonunda yeni bir satır karakteri yerine bir alan olmasını istediğiniz anlamına gelir, böylece "Neyse" ile aynı çizgide devam edebilirsiniz Baskı ("Merhaba Dünya") x = '20' baskı (x, x, x, x) baskı ("HI HI") ' 1 satır yazdırmak istiyorum = "Merhaba Dünya" 2. hat = "HI HI" Ancak Örnek ' baskı 20 20 20 20 3 satır = ("Merhaba Dünya") x = '20' print (x, x, x, x, end = '') print ("HI HI") ' Çıktısını yazdı 1 satır = Merhaba Dünya 2. satır = 20 20 20 20 HI HI – TheyDontHaveIT

2

yazdırma işlevi belgelerine bakın yazdırır: - Yani basitçe end Eğer Örneğin print açıklamada

çalıştırıldıktan sonra basılacak istediğim şey ifade yazdırmak istediğiniz şeyden sonra yazdırılır. Varsayılan olarak bir satırsonu ( "\n") içerir, ancak boş bir dize gibi başka bir şeye değiştirilebilir.