python

2016-03-24 6 views
-1

Numaralarını kullanarak belirli bir desen oluşturmak için Python'da belirli bir desen oluşturmaya çalışıyordum ancak aynı çıktıyı alamıyordum. Bu i yazdım kodpython

from __future__ import print_function 
for i in range(1, 11, 1): 
    print() 
    for j in range(1 , i): 
     print(j ,end ="") 

olduğunu

1 
1 3 
1 3 5 
1 3 5 7 
1 3 5 7 9 

istediğiniz çıkışı i alıyorum çıktı kalıptır i hakkı almak için yapabilirsiniz ne gibi değişiklikler

1 
12 
123 
1234 
12345 
123456 
1234567 
12345678 
123456789 

çıktı?

cevap

0

deneyebilirsiniz. print için end anahtar sözcük bağımsız değişkeni, ... sonunda yazdırması gerekenleri denetler. Varsayılan satırsonu olduğu gibi iyidir. Varsayılan sep=' ' da ihtiyacınız olan şeydir ve bu nedenle her bir yinelemede yazdırmak için toplanan tam sayılarınızı paketlemeniz gerekir.

from __future__ import print_function 

xs = [] 
for i in xrange(1, 11, 2): 
    xs.append(i) 
    print(*xs) 

Bunun hakkında meraklı bir yol olduğundan eminim, ancak bu istenen çıktıya sahip.

1

Son parametreyi kullanarak menzili aşabilirsiniz.

Sen O sadece 2 'lik bir adım var ve her adımda şimdiye kadar sayıları yazdırmak zorunda görünüyor for i in range(1, 11, 2):

0

deneyin bu

from __future__ import print_function 
for i in range(2, 11, 2): 
    print() 
    for j in range(1 , i, 2): 
     print(j ,end =" ") 
0

Aşağıdaki kullanarak istenilen çıktıyı alabilirsiniz:

number_list = [] 
# N is the number up to, but not including, which you want to print 
for number in range(1, N, 2): 
    number_list.append(number) 
    for element in number_list: 
     print element, 
    print 
0

: Eğer biçimlendirme önem veriyorsanız

number_list = [] 
# N is the number up to, but not including, which you want to print 
for number in range(1, N, 2): 
    number_list.append(number) 
    print number_list 

, aşağıdakileri yapabilirsiniz Tek sayıları almak için range(1,n,2) kullanın ve numaraları list'a ekleyin '{} ' * len gibi bir biçim dizesi, burada len, list'un uzunluğudur.

def print_odds(n): 
    odds = [] 
    for o in range(1,n,2): 
     odds.append(o) 
     odd_string = '{} ' * len(odds) 
     print(odd_string.rstrip().format(*odds))