Strona główna Polish Python Coders Group
   Strona główna   Pomoc Zaloguj się Rejestracja  
Witamy, Gość. Zaloguj się lub zarejestruj.
Czy dotarł do Ciebie email aktywacyjny?

Zaloguj się podając nazwę użytkownika, hasło i długość sesji

Aktualności:
Szukaj Szukaj
Strony: [1]   Do dołu
Drukuj
Wątek: Formatowanie print  (Przeczytany 315 razy)
« : 15:29 15/12/18 »
kondek Offline
Hello World!

Zobacz profil
*

Reputacja: 0
Wiadomości: 1


Hej, uczę się pythona i napisałem skrypt który wykonuje ciąg fibonacciego. Mam problem z formatowaniem wyników, tzn chciałbym użyć dynamicznej liczby spacji? Poniżej prezentuję grafikę jak chciałbym to zrobić.



Kod:
Kod
def fib():
   a, b = 0, 1
   while True:          
       yield a            
       a, b = b, a + b    
 
def show_results():
 
   how_many_print = int(input("How many records do you want print ? "))
   for index, fibonacci_number in zip(range(1,how_many_print + 1), fib()):
    print('{i:3}: {f:3}'.format(i=index, f=fibonacci_number))
 
show_results()
 

Za pomoc serdecznie dziękuję!
Pozdrawiam
Zapisane
« Odpowiedz #1 : 16:56 16/12/18 »
Guaz Offline
Professional Python User

Zobacz profil
***

Reputacja: 64
Płeć: Mężczyzna
Wiadomości: 477


Pewnie, spójrz na to Uśmiech

Kod
>>> a = 2
>>> b = 3
>>> "{:^{}}".format(a, b)
' 2 '

Jeszcze musimy znać długość liczby bo której będziemy wyrzucać wyniki:
Kod
from math import sqrt
def len_of_fibbo(n):
   return len(str(((1+sqrt(5))**n-(1-sqrt(5))**n)/(2**n*sqrt(5))))

Połącz kropki ze swoim programem, jak nie wyjdzie to pisz, pomożemy dalej Chichot
Zapisane

Python 3.5+ / Mint

Daje wędkę zamiast ryby. Chyba że ktoś się chce czegoś nauczyć, wtedy chętnie pomogę każdemu.
Za rybę niestety trzeba zapłacić Z politowaniem.
Strony: [1]   Do góry
Drukuj
Skocz do:  

© 2007 - 2019 Polish Python Coders Group
Powered by SMF 1.1.21 | SMF © 2006-2009, Simple Machines | Theme by PixelSlot