Nutzen Sie das str.format von Python in vollem Umfang

Ich lerne Python ständig bei freeCodeCamp.

Im vorherigen Artikel (https://qiita.com/makky0620/items/73a566580b229c119675) habe ich * Time Calculator * herausgefordert, diesmal * Budget App *.

Dritte Frage: Budget App

Was erforderlich ist, ist wie folgt

--Erstellen einer Kategorieklasse

*************Food*************
initial deposit        1000.00
groceries               -10.15
restaurant and more foo -15.89
Transfer to Clothing    -50.00
Total: 923.96

--create_spend_chart Methode: Anzeige wie folgt

Percentage spent by category
100|          
 90|          
 80|          
 70|          
 60| o        
 50| o        
 40| o        
 30| o        
 20| o  o     
 10| o  o  o  
  0| o  o  o  
    ----------
     F  C  A  
     o  l  u  
     o  o  t  
     d  t  o  
        h     
        i     
        n     
        g    

Persönlicher Punkt: Formatieren mit Format

Es ist erforderlich, die Methode str.format vollständig zu verwenden, um das Format mit der Methode str und der Methode create_spend_chart der Category-Klasse zu ordnen.

Verschiedene Formatspezifikationen

--Indexnummer --'{0} {1} {0}'. Format ('Banane', 'Apfel') ---> Banane Apfel Banane

Implementierung der str -Methode der Category-Methode

*************Food*************  <-Header
initial deposit        1000.00 -|
groceries               -10.15  |-Körper
restaurant and more foo -15.89  |
Transfer to Clothing    -50.00 -|
Total: 923.96                   <-gesamt

Teilen wir es in drei Teile: Header, Body und Total. Die Bedingungen sind wie folgt

--Header besteht aus 30 Zeichen

category_name = 'Food'
ledger = [...] #Liste der Objekte mit Menge und Beschreibung

def __str__(self):
    header = '{:*^30}'.format(category_name)
    body = ['{:<23}{:>7.2f}'.format(item.description, item.amount) for item in ledger]
    total = sum([item.amount for item in ledger])

    return header + '\n' + '\n'.join(body) + '\n' + 'Total: {}'.format(total)

Schließlich

Es war erfrischend, weil ich es normalerweise nicht mit Konsolenausgabe visualisiere. Bitte versuchen Sie es mit der Methode create_spend_chart.

Die nächste Ausgabe ist * Polygon Area Calculator *.

Recommended Posts

Nutzen Sie das str.format von Python in vollem Umfang
Verwenden von virtualenv, einer unabhängigen Ausführungsumgebung für Python
Bequeme Verwendung von Ipython
Anmutige Verwendung von MySQLdb
Verwenden wir einfach die Wortwolke von Python!
Befreien Sie sich von Pythons KeyError
Verwenden Sie Pythons MeCab-Bindungs-Natto-Py
Verwendung und Integration von "Shodan"
Vollständiges Verständnis des Python-Debuggens