Introduktion till programmering i Python

Lär dig grunderna i programmering vid två tillfällen under mottagningen på Globala System 2023. Handledare är Viggo Trobäck och Olliver Persson.

Tisdag 22/8 kl 13.15 - 15.00 är första passet.
Torsdag 24/8 kl 13.15 - 15.00 är andra passet.

Det finns många program för att skriva och testa kod. Vi rekommenderar att ni använder python.globalasystem.se/editor eller replit.com för våra två introduktionstillfällen. I senare kurser kommer ni använda andra program, så som Spyder och Jupyter Notebook.

Vi har en powerpoint med lite tips och W3Schools Python Tutorial är en väldigt bra sida för att lära sig Python.

Instruktioner och variabler

Innehåll

Vi kommer gå igenom vad programmering är och hur en dator läser instruktioner. Varför ska man kunna programmera och hur används det på Globala System? Här introducerar vi också de första begreppen, så som variabler.

Övningar

  1. Skriv ett program som omvandlar t grader Celsius till Kelvin (0 °C är 273.15 K). Välj själv värdet på t.
    Lösningsförslag
    #godtycklig temperatur i Celsius
    t = 15
    
    #omvandling till Kelvin
    kelvin = t + 273.15
    
    #utskrift
    print(t, ' grader Celsius är ', kelvin, ' grader Kelvin.')
  2. Gör ett program som beräknar hur mycket en vattenmolekyl väger.
    Lösningsförslag

    väte = 1
    syre = 14
                                
    vatten = 2 * väte + syre
    
    print(vatten)
    

  3. Skriv ett program med två variabler och skriv ut summan, differensen, produkten och kvoten.
    Lösningsförslag
    # anger två tal
    tal1 = 15
    tal2 = 23
    
    # beräkna och skriv ut
    print("Summan är ", tal1 + tal2)
    print("Differensen är ", tal1 - tal2)
    print("Produkten är ", tal1 * tal2)
    print("Kvoten är ", tal1 / tal2)

Datatyper och listor

Innehåll

Nu är det dags att dyka lite djupare i olika begrepp. Vi utvecklar begreppet variabel och introducerar olika datatyper, så som String, Float, Int och Bool. Efter det går vi igenom listor, vad de är bra till och hur man använder dem.

Övningar

  1. Kopiera koden nedan, summera talen och skriv ut svaret på skärmen. Ändra inte något i de tre raderna du kopierat.
    a = "5"
    b = 3
    c = "22.33"
    Lösningsförslag
    a = "5"
    b = 3
    c = "22.33"
    
    # int()-funktionen och float()-funktionen används för att konvertera från datatypen "string" till "integer" och "float" då "string inte kan adderas"
    summa = int(a) + b + float(c)
                                
    print(summa)
  2. Gör en lista med 10 valfria nummer. Programmet ska sedan skriva ut:
    a. det andra talet i listan
    b. summan av talen
    c. medelvärdet av talen
    OBS: det finns funktioner för uppgift b och c, så gör det inte manuellt!
    Lösningsförslag
    minLista = [6, 8, 22, 15, 5, 23, 86, 55, 36]
    
    # a. tänk på att python börjar räkna från 0, så andra talet i listan benämns 1
    print( minLista[1] )
    
    # b. sum()-funktionen summerar alla tal i listan
    print(sum(minLista))
    
    # c. len()-funktionen ger längden av listan, så vi kan beräkna medelvärdet
    print(sum(minLista) / len(minLista))
                            
  3. Gör en lista L = [4, 5, 2, 7, 11, 3]. Skriv ett program som:
    a. skriver ut alla tal i listan förutom det första och det sista
    b. lägger till ett tal och skriver ut den nya listan
    c. tar bort det andra talet och skriver ut den nya listan
    d. adderar de tre första talen i listan och skriver ut summan
    Lösningsförslag
    # lista med tal
    L = [4, 5, 2, 7, 11, 3]
    
    # a. skriv ut listan utan första och sista talet
    print("a. ", L[1:-1])
    
    # b. lägg till ett tal i listan och skriv ut
    L.append(6)
    print("b. ", L)
    
    # c. ta bort det andra talet
    L.pop(1)
    print("c. ", L)
    
    # d. addera tre första talen
    summa = sum(L[0:2])
    print("d. ", summa)

Villkor och loopar

Innehåll

Nu går vi igenom villkor (if-satser) och loopar. Villkor används för att utföra ett kodstycke endast om ett logiskt uttryck är sant. Loopar används när samma kodstycke ska upprepas flera gånger.

Övningar

  1. Gör ett program där en variabel får ett värde med hjälp av input()-funktionen. Om värdet är samma som ditt namn så ska du skriva ut "Välkommen!" på skärmen, annars ska du skriva "Tyvärr inte rätt person!".
    Lösningsförslag
    x = input()
    if x == "namn":
        print("Välkommen!")
    else: 
        print("Tyvärr inte rätt person!")
                            
  2. Kopiera nedanstående kod och ändra felen så att programmet går att köra.
    # Program som tar emot två tal
    # och skriver ut det största
    
    # Variabler
    a = 5
    b = 3
                             
    # Kollar om a är större än b
    if a < b:
        print(a, 'är större än', c))
                             
    # Kollar om a är mindre än b
    else a < b:
        print(a, är mindre än, b)
                             
    # Kollar om talen är lika stora
    else 
        print(a 'och' b 'är lika stora.”)
  3. Gör en lista med 5 valfria värden. Skriv ut varje värde på en ny rad med hjälp av en loop.
    Lösningsförslag
    x = ["Python", "är", "ju", "väldigt", "kul!"]
    for i in x:
        print(i)
  4. Denna uppgift liknar lite mer ett typiskt problem på Globala System. Av alla de globala utmaningar som ni kommer titta närmare på under era studier på Globala System är den globala uppvärmningen den kanske mest återkommande. Som vi vet beror denna till stor del på utsläpp av växthusgaser. Vi ger er här en lista med utsläppsdata för de flesta av världens länder för 2019 som ni ska kopiera och lägga överst i er kod. Utsläppen mäts i ton CO_2 per capita, dvs 1 är här lika med 1000 kg CO_2 per person i landet 2019.
    a. Börja med att använda print()-funktionen för att förstå hur detta dataset är uppbyggt.
    b. Vilket land hade störst utsläpp per capita 2019?
    Var det samma land som du förväntade dig? Hur jämför det sig med exempelvis Sverige?
    Visa utsläppsdata
    lista = [['Afghanistan', 72186], ['Africa Eastern and Southern', 1298577], ['Africa Western and Central', 1544740], ['Albania', 327], ['Algeria', 23598], ['Andorra', 2], ['Angola', 92690], ['Antigua and Barbuda', 10], ['Arab World', 360720], ['Argentina', 6977], ['Armenia', 482], ['Australia', 1146], ['Austria', 306], ['Azerbaijan', 3370], ['Bahamas', 68], ['Bahrain', 151], ['Bangladesh', 89796], ['Barbados', 39], ['Belarus', 360], ['Belgium', 424], ['Belize', 98], ['Benin', 37100], ['Bhutan', 369], ['Bolivia', 6399], ['Bosnia and Herzegovina', 158], ['Botswana', 2320], ['Brazil', 40429], ['Brunei', 73], ['Bulgaria', 422], ['Burkina Faso', 64744], ['Burundi', 24412], ['Cambodia', 9647], ['Cameroon', 66071], ['Canada', 1873], ['Cape Verde', 157], ['Caribbean Small States', 1968], ['Central African Republic', 18095], ['Central Europe and the Baltics', 4804], ['Chad', 73024], ['Chile', 1612], ['China', 132256], ['Colombia', 10091], ['Comoros', 1656], ['Congo', 8204], ['Costa Rica', 599], ["Cote d'Ivoire", 70330], ['Croatia', 176], ['Cuba', 591], ['Cyprus', 29], ['Czechia', 350], ['Democratic Republic of Congo', 290859], ['Denmark', 232], ['Djibouti', 1173], ['Dominica', 33], ['Dominican Republic', 5768], ['Early-demographic dividend', 2211887], ['East Asia & Pacific', 434759], ['East Asia & Pacific (IDA & IBRD)', 423470], ['East Asia & Pacific (excluding high income)', 429573], ['Ecuador', 4696], ['Egypt', 52291], ['El Salvador', 1552], ['Equatorial Guinea', 3519], ['Eritrea', 4247], ['Estonia', 33], ['Eswatini', 1468], ['Ethiopia', 177849], ['Euro area', 11868], ['Europe & Central Asia', 88045], ['Europe & Central Asia (IDA & IBRD)', 71162], ['Europe & Central Asia (excluding high income)', 69362], ['European Union', 16629], ['Fiji', 482], ['Finland', 122], ['Fragile and conflict affected situations', 2293735], ['France', 3251], ['Gabon', 2807], ['Gambia', 4504], ['Georgia', 513], ['Germany', 2959], ['Ghana', 40168], ['Greece', 302], ['Grenada', 30], ['Guatemala', 10364], ['Guinea', 44114], ['Guinea-Bissau', 5111], ['Guyana', 453], ['Haiti', 16890], ['Heavily indebted poor countries (HIPC)', 1810727], ['High income', 63377], ['Honduras', 3480], ['Hungary', 335], ['IBRD only', 1666290], ['IDA & IBRD total', 5122830], ['IDA blend', 1444237], ['IDA only', 2012303], ['IDA total', 3456540], ['Iceland', 8], ['India', 824448], ['Indonesia', 114994], ['Iran', 21248], ['Iraq', 28801], ['Ireland', 203], ['Israel', 624], ['Italy', 1432], ['Jamaica', 652], ['Japan', 2343], ['Jordan', 3355], ['Kazakhstan', 3976], ['Kenya', 63623], ['Kiribati', 164], ['Kuwait', 448], ['Kyrgyzstan', 2824], ['Laos', 7520], ['Late-demographic dividend', 287979], ['Latin America & Caribbean', 169465], ['Latin America & Caribbean (IDA & IBRD)', 168767], ['Latin America & Caribbean (excluding high income)', 154456], ['Latvia', 74], ['Least developed countries: UN classification', 1968312], ['Lebanon', 839], ['Lesotho', 4831], ['Liberia', 13365], ['Libya', 1448], ['Lithuania', 106], ['Low & middle income', 5115570], ['Low income', 1509340], ['Lower middle income', 3074253], ['Luxembourg', 18], ['Madagascar', 43110], ['Malawi', 25712], ['Malaysia', 4513], ['Maldives', 54], ['Mali', 73632], ['Malta', 30], ['Marshall Islands', 44], ['Mauritania', 10699], ['Mauritius', 206], ['Mexico', 31368], ['Micronesia (country)', 75], ['Middle East & North Africa', 220113], ['Middle East & North Africa (IDA & IBRD)', 210169], ['Middle East & North Africa (excluding high income)', 212940], ['Middle income', 3632497], ['Moldova', 584], ['Monaco', 2], ['Mongolia', 1183], ['Montenegro', 17], ['Morocco', 14511], ['Mozambique', 81507], ['Myanmar', 41896], ['Namibia', 2954], ['Nauru', 9], ['Nepal', 17296], ['Netherlands', 696], ['New Zealand', 283], ['Nicaragua', 2212], ['Niger', 81635], ['Nigeria', 857899], ['North America', 27225], ['North Korea', 6116], ['North Macedonia', 137], ['Norway', 145], ['OECD members', 108114], ['Oman', 1034], ['Other small states', 33508], ['Pacific island small states', 1539], ['Pakistan', 399418], ['Palau', 4], ['Palestine', 2771], ['Panama', 1175], ['Papua New Guinea', 10393], ['Paraguay', 2774], ['Peru', 7563], ['Philippines', 59751], ['Poland', 1624], ['Portugal', 295], ['Post-demographic dividend', 53832], ['Pre-demographic dividend', 2634861], ['Qatar', 172], ['Romania', 1317], ['Russia', 10556], ['Rwanda', 13310], ['Saint Kitts and Nevis', 11], ['Saint Lucia', 48], ['Saint Vincent and the Grenadines', 23], ['Samoa', 72], ['San Marino', 0], ['Sao Tome and Principe', 198], ['Saudi Arabia', 3964], ['Senegal', 24651], ['Serbia', 441], ['Seychelles', 23], ['Sierra Leone', 27580], ['Singapore', 128], ['Slovakia', 325], ['Slovenia', 42], ['Small states', 37015], ['Solomon Islands', 416], ['Somalia', 72126], ['South Africa', 40631], ['South Asia', 1405945], ['South Asia (IDA & IBRD)', 1405945], ['South Korea', 1200], ['South Sudan', 36916], ['Spain', 1221], ['Sri Lanka', 2378], ['Sub-Saharan Africa', 2843317], ['Sub-Saharan Africa (IDA & IBRD)', 2843317], ['Sub-Saharan Africa (excluding high income)', 2843294], ['Sudan', 78028], ['Suriname', 191], ['Sweden', 305], ['Switzerland', 353], ['Syria', 9195], ['Tajikistan', 9377], ['Tanzania', 103222], ['Thailand', 6444], ['Timor', 1645], ['Togo', 17331], ['Tonga', 42], ['Trinidad and Tobago', 312], ['Tunisia', 3398], ['Turkey', 13149], ['Turkmenistan', 5793], ['Tuvalu', 7], ['Uganda', 74053], ['Ukraine', 3514], ['United Arab Emirates', 750], ['United Kingdom', 3313], ['United States', 25352], ['Upper middle income', 541899], ['Uruguay', 337], ['Uzbekistan', 12045], ['Vanuatu', 224], ['Venezuela', 12620], ['Vietnam', 31689], ['World', 5188872], ['Yemen', 50312], ['Zambia', 38460], ['Zimbabwe', 24166]]
    
    Datan är hämtad från OurWorldInData.org
    Lösningsförslag
    # a. förstå datan
    # a. här kan vi förstå att datan är en lista av listor där varje inre lista består av ett lands namn samt deras utsläpp, exempelvis så kommer emissions2019[0] skriva ut namn och utsläpp för det första landet och emissions2019[0][1] bara kommer skriva ut utsläppen för det första landet
    print(emissions2019)
                                
    # b. gå igenom datan för att hitta det största landet
    biggestEmissions = 0
    countryName = ''
                                
    # vi loopar över varje värde i emissions
    for x in emissions2019:
                                
        if biggestEmissions < x[1]:
                                
            biggestEmissions = x[1]
            countryName = x[0]
                                  
    print("Land: ", countryName)
    print("Utsläpp av CO2: ", biggestEmissions)

Moduler och trigonometri

Innehåll

Det sista passet bjuder på olika moduler. Allt finns inte inbyggt i Python. De trigonometriska funktionerna finns till exempel inte i grundversionen av python. Vi behöver istället importera dessa från ett bibliotek.

Övningar

  1. Skriv ett program som simulerar två tärningskast och skriver ut summan. Tips: använd random.randint()
    Lösningsförslag
    #importerar biblioteket random
    import random 
    
    #simulerar två tärningskast, slumpmässigt tal mellan 1 och 6
    t1 = random.randint(1, 6)
    t2 = random.randint(1, 6)
    
    print(‘Första tärningen visar’, t1, ‘och andra tärningen visar’, t2, ‘\n’)
    print(‘Summan blir’, t1 + t2)
  2. Skriv ett program med två variabler vinkel och katet och ge dem rimliga värden. Beräkna hypotenusan i den rätvinkliga triangel som skapas av dessa. Vad händer om vinkeln är mer än 90 grader? Tips: använd en if-sats och math-modulens funktioner cos() och radians().
    Lösningsförslag
    import math
    
    katet = 4
    vinkel = 90
    
    if vinkel < 90:
        hypotenusa = katet / math.cos(math.radians(vinkel))
        
        print('Triangelns hypotenusa =', hypotenusa)
        
    else: 
        print('Finns ingen möjlig triangel')

Extra övningar

För den som hunnit långt eller vill öva mer.

I Del 1 och Del 2 har vi försökt se till att uppgifterna endast täcker det ni lärt er. Här under Extra Uppgifter kan ni behöva googla lite för att lösa uppgifterna.

  1. Här är en lista över hur många millimeter regnvatten det kommer för respektive månad under ett specifikt år.
    vattenmängd = [2,4,1,1,3,5,0,6,3,10,9,2]
    Gör ett program som skriver ut:
    a. Hur många millimeter regn det kom i maj.
    b. Hur många millimeter regnvatten det i genomsnitt kommer varje månad.
    c. Skillnaden i nederbörd mellan mars och november.
    Lösningsförslag

    # a) Hur många millimeter regn det kom i maj.
    print("Nederbörd i maj =", vattenmängd[5])
    
    # b) Hur många millimeter regnvatten det i genomsnitt kommer varje månad.
    summa = 0
    for i in range(len(vattenmängd)):
        summa += vattenmängd[i]
        
    medelvärde = summa / len(vattenmängd)
    
    print("Den genomsnittliga nederbörden per månad är =", medelvärde)
    
    # c) Skillnaden i nederbörd mellan mars och november.
    skillnad = vattenmängd[10] - vattenmängd[2]
    
    print("Skillnaden i nederbörd mellan mars och november =", skillnad)

  2. Skriv ett program som gör om s antal sekunder till antal dagar, timmar, minuter och sekunder! Välj själv värdet på s.
    Lösningsförslag

    Detta är ett sätt att lösa uppgiften på. Genom att dividera med två snedsträck // inkluderas inte resten. Samma resultat kan uppnås genom att först beräkna resten, sen ta bort resten innan man dividerar med ett vanligt snedsträck.

    # godtyckligt antal sekunder
    s = 89671
                                
    # sparar ursprungligt antal sekunder i en ny variabel
    s1 = s
    
    # hur många gånger får 86400 plats i s
    dagar = s // (60 * 60 * 24)
    
    # resterande sekunder sparas i samma variabel s
    s = s % (60 * 60 * 24)
    
    # hur många gånger får 3600 plats i resterande sekunder s
    timmar = s // (60 * 60)
    
    # resterande sekunder sparas i samma variabel s
    s = s % (60 * 60)
    
    # hur många gånger får 60 plats i s
    minuter = s // 60
    
    # resterande sekunder
    sekunder = s % 60
    
    # utskrift
    print(s, ‘sekunder är’, dagar, ‘dagar’, timmar, ‘timmar’, minuter, ‘minuter och’, sekunder, ‘sekunder!’)
  3. Kopiera följande kod till ditt program och kör programmet:
    r = int( input("Radie: ") )
    print(r)
    Vad gör koden? Fortsätt på programmet genom att beräkna volymen på ett klot med radien r och skriv ut svaret.
    Lösningsförslag
    r = int( input("Radie: ") ) # användaren får skriva en radie som konverteras till int 
    print(r)
    
    volym = (4 * 3.14 * (r**3)) / 3 # beräknar volymen 
    
    print("Volym: ", round(volym)) # avrundar och skriver ut volymen
                            
  4. Gör ett program som löser en andragradsekvation ax^2+bx+c=0 genom att använda PQ-formeln. Börja med att skapa tre variabler a, b och c för värdet på koefficienterna i ekvationen. Ge dem värden direkt eller använd input() från ovanstående övning. Beräkna och skriv ut svaret på x.
    Lösningsförslag
    import math
    
    a = 1
    b = 6
    c = 7
    
    p = b/a
    q = c/a
    
    x1 = -(p/2) + math.sqrt( (p/2)**2 - q )
    x2 = -(p/2) - math.sqrt( (p/2)**2 - q)
    
    print("X1 = ", x1)
    print("X2 = ", x2)
  5. Gör ett program som skriver ut svaren på följande trigonometriska beräkningar:
    a. cos(π)
    b. sin(π/2)
    c. tan(π/4)
    d. cos(v) = 1
    e. sin(v) = 1
    f. cos(45°) Tips: använd math.radians för att konvertera till radianer
    g. sin(30°)
    Lösningsförslag
    import math
    
    # a. 
    print(math.cos(math.pi))
    
    # b.
    print(math.sin(math.pi / 2))
    
    # c.
    print(math.tan(math.pi / 4)) 
    
    # d. 
    print(math.acos(1))
    
    # e.
    print(math.asin(1))
    
    # f.
    print(math.cos(math.radians(45)))
    
    # g.
    print(math.sin(math.radians(30)))
  6. Gör ett program som skriver ut hur mycket klockan är och vilket datum det är. Tips: sök efter modulen “datetime” på google!
    Lösningsförslag

    För den här uppgiften behöver ni använda en modul ni inte använt tidigare. Försök att googla på pythons "datetime"-modul. Det viktigaste i den här uppgiften är inte att förstå hur modulen "datetime" fungerar, men att ni vet hur ni hittar information om en modul ni inte använt tidigare.

    import datetime
    
    tid = datetime.datetime.now()
    
    print("Datum och tid är: ", tid)
  7. Denna uppgift liknar lite mer ett typiskt problem på Globala System. Nedan finns data för barndödlighet i olika länder för några år mellan 1970 och 2019. I siffrorna ingår endast barn under 5 år. Detta dataset kommer från UN Inter-agency Group for Child Mortality Estimation.

    a. Börja med att försöka förstå vad det är för information och hur den är uppbyggd. Vilka siffror och länder hör ihop? Hur kommer du åt de olika siffrorna? Finns det någon information du inte behöver som du kan ta bort?
    b. Vilket land har minst och flest dödsfall 1970?
    c. Vilket land har minst och flest dödsfall 2019?
    d. Vilket lands barndödlighet har minskat mest procentuellt?
    e. Har något lands barndödlighet ökat? Om det finns, med hur många procent har det ökat?
    Visa dataset

    Nedan finns data som pythonkod. Kopiera och lägg överst i ditt program.

     data = [['Afghanistan', '1970', '164463'], ['Afghanistan', '1992', '111102'], ['Afghanistan', '2000', '125079'], ['Afghanistan', '2019', '72186'], ['Africa Eastern and Southern', '1970', '550611'], ['Africa Eastern and Southern', '1992', '2127316'], ['Africa Eastern and Southern', '2000', '2125491'], ['Africa Eastern and Southern', '2019', '1298577'], ['Africa Western and Central', '1970', '1343569'], ['Africa Western and Central', '1992', '1783773'], ['Africa Western and Central', '2000', '1858805'], ['Africa Western and Central', '2019', '1544740'], ['Albania', '1992', '2891'], ['Albania', '2000', '1448'], ['Albania', '2019', '327'], ['Algeria', '1970', '155888'], ['Algeria', '1992', '37698'], ['Algeria', '2000', '24415'], ['Algeria', '2019', '23598'], ['Andorra', '1992', '8'], ['Andorra', '2000', '5'], ['Andorra', '2019', '2'], ['Angola', '1992', '132761'], ['Angola', '2000', '152254'], ['Angola', '2019', '92690'], ['Antigua and Barbuda', '1970', '55'], ['Antigua and Barbuda', '1992', '18'], ['Antigua and Barbuda', '2000', '23'], ['Antigua and Barbuda', '2019', '10'], ['Arab World', '1992', '588260'], ['Arab World', '2000', '477609'], ['Arab World', '2019', '360720'], ['Argentina', '1992', '19825'], ['Argentina', '2000', '14077'], ['Argentina', '2019', '6977'], ['Armenia', '1992', '3112'], ['Armenia', '2000', '1241'], ['Armenia', '2019', '482'], ['Australia', '1970', '5293'], ['Australia', '1992', '2077'], ['Australia', '2000', '1532'], ['Australia', '2019', '1146'], ['Austria', '1970', '3478'], ['Austria', '1992', '766'], ['Austria', '2000', '449'], ['Austria', '2019', '306'], ['Azerbaijan', '1992', '19091'], ['Azerbaijan', '2000', '10767'], ['Azerbaijan', '2019', '3370'], ['Bahamas', '1992', '132'], ['Bahamas', '2000', '88'], ['Bahamas', '2019', '68'], ['Bahrain', '1970', '619'], ['Bahrain', '1992', '313'], ['Bahrain', '2000', '182'], ['Bahrain', '2019', '151'], ['Bangladesh', '1970', '640054'], ['Bangladesh', '1992', '469004'], ['Bangladesh', '2000', '301684'], ['Bangladesh', '2019', '89796'], ['Barbados', '1970', '255'], ['Barbados', '1992', '69'], ['Barbados', '2000', '57'], ['Barbados', '2019', '39'], ['Belarus', '1992', '2057'], ['Belarus', '2000', '1151'], ['Belarus', '2019', '360'], ['Belgium', '1970', '3402'], ['Belgium', '1992', '1112'], ['Belgium', '2000', '663'], ['Belgium', '2019', '424'], ['Belize', '1992', '226'], ['Belize', '2000', '171'], ['Belize', '2019', '98'], ['Benin', '1970', '33936'], ['Benin', '1992', '38492'], ['Benin', '2000', '38840'], ['Benin', '2019', '37100'], ['Bhutan', '1992', '2227'], ['Bhutan', '2000', '1250'], ['Bhutan', '2019', '369'], ['Bolivia', '1970', '41375'], ['Bolivia', '1992', '27022'], ['Bolivia', '2000', '19029'], ['Bolivia', '2019', '6399'], ['Bosnia and Herzegovina', '1992', '1103'], ['Bosnia and Herzegovina', '2000', '424'], ['Bosnia and Herzegovina', '2019', '158'], ['Botswana', '1970', '3403'], ['Botswana', '1992', '2425'], ['Botswana', '2000', '3248'], ['Botswana', '2019', '2320'], ['Brazil', '1970', '434532'], ['Brazil', '1992', '208657'], ['Brazil', '2000', '122065'], ['Brazil', '2019', '40429'], ['Brunei', '1970', '246'], ['Brunei', '1992', '102'], ['Brunei', '2000', '78'], ['Brunei', '2019', '73'], ['Bulgaria', '1970', '4313'], ['Bulgaria', '1992', '1899'], ['Bulgaria', '2000', '1155'], ['Bulgaria', '2019', '422'], ['Burkina Faso', '1970', '80135'], ['Burkina Faso', '1992', '82596'], ['Burkina Faso', '2000', '91457'], ['Burkina Faso', '2019', '64744'], ['Burundi', '1970', '39090'], ['Burundi', '1992', '47482'], ['Burundi', '2000', '42075'], ['Burundi', '2019', '24412'], ['Cambodia', '1992', '43644'], ['Cambodia', '2000', '36125'], ['Cambodia', '2019', '9647'], ['Cameroon', '1970', '57735'], ['Cameroon', '1992', '73832'], ['Cameroon', '2000', '88571'], ['Cameroon', '2019', '66071'], ['Canada', '1970', '7987'], ['Canada', '1992', '2956'], ['Canada', '2000', '2089'], ['Canada', '2019', '1873'], ['Cape Verde', '1970', '1529'], ['Cape Verde', '1992', '800'], ['Cape Verde', '2000', '455'], ['Cape Verde', '2019', '157'], ['Caribbean Small States', '1992', '4798'], ['Caribbean Small States', '2000', '3555'], ['Caribbean Small States', '2019', '1968'], ['Central African Republic', '1970', '16431'], ['Central African Republic', '1992', '21044'], ['Central African Republic', '2000', '24446'], ['Central African Republic', '2019', '18095'], ['Central Europe and the Baltics', '1992', '26449'], ['Central Europe and the Baltics', '2000', '12741'], ['Central Europe and the Baltics', '2019', '4804'], ['Chad', '1992', '62907'], ['Chad', '2000', '74268'], ['Chad', '2019', '73024'], ['Chile', '1970', '22439'], ['Chile', '1992', '4792'], ['Chile', '2000', '2814'], ['Chile', '2019', '1612'], ['China', '1992', '1229523'], ['China', '2000', '652138'], ['China', '2019', '132256'], ['Colombia', '1970', '76306'], ['Colombia', '1992', '29677'], ['Colombia', '2000', '22041'], ['Colombia', '2019', '10091'], ['Comoros', '1992', '2042'], ['Comoros', '2000', '1983'], ['Comoros', '2019', '1656'], ['Congo', '1970', '7820'], ['Congo', '1992', '8558'], ['Congo', '2000', '13102'], ['Congo', '2019', '8204'], ['Costa Rica', '1970', '4491'], ['Costa Rica', '1992', '1329'], ['Costa Rica', '2000', '1011'], ['Costa Rica', '2019', '599'], ["Cote d'Ivoire", '1970', '59833'], ["Cote d'Ivoire", '1992', '79802'], ["Cote d'Ivoire", '2000', '91945'], ["Cote d'Ivoire", '2019', '70330'], ['Croatia', '1992', '594'], ['Croatia', '2000', '382'], ['Croatia', '2019', '176'], ['Cuba', '1970', '9491'], ['Cuba', '1992', '2075'], ['Cuba', '2000', '1295'], ['Cuba', '2019', '591'], ['Cyprus', '1992', '156'], ['Cyprus', '2000', '83'], ['Cyprus', '2019', '29'], ['Czechia', '1992', '1347'], ['Czechia', '2000', '489'], ['Czechia', '2019', '350'], ['Democratic Republic of Congo', '1992', '294590'], ['Democratic Republic of Congo', '2000', '331074'], ['Democratic Republic of Congo', '2019', '290859'], ['Denmark', '1970', '1274'], ['Denmark', '1992', '503'], ['Denmark', '2000', '376'], ['Denmark', '2019', '232'], ['Djibouti', '1992', '2567'], ['Djibouti', '2000', '2254'], ['Djibouti', '2019', '1173'], ['Dominica', '1970', '119'], ['Dominica', '1992', '25'], ['Dominica', '2000', '21'], ['Dominica', '2019', '33'], ['Dominican Republic', '1970', '22798'], ['Dominican Republic', '1992', '11652'], ['Dominican Republic', '2000', '8518'], ['Dominican Republic', '2019', '5768'], ['Early-demographic dividend', '1992', '6634151'], ['Early-demographic dividend', '2000', '5137555'], ['Early-demographic dividend', '2019', '2211887'], ['East Asia & Pacific', '1992', '2078169'], ['East Asia & Pacific', '2000', '1256542'], ['East Asia & Pacific', '2019', '434759'], ['East Asia & Pacific (IDA & IBRD)', '1992', '2035147'], ['East Asia & Pacific (IDA & IBRD)', '2000', '1219655'], ['East Asia & Pacific (IDA & IBRD)', '2019', '423470'], ['East Asia & Pacific (excluding high income)', '1992', '2058394'], ['East Asia & Pacific (excluding high income)', '2000', '1244553'], ['East Asia & Pacific (excluding high income)', '2019', '429573'], ['Ecuador', '1970', '32987'], ['Ecuador', '1992', '14830'], ['Ecuador', '2000', '9293'], ['Ecuador', '2019', '4696'], ['Egypt', '1970', '339738'], ['Egypt', '1992', '140792'], ['Egypt', '2000', '82642'], ['Egypt', '2019', '52291'], ['El Salvador', '1970', '22911'], ['El Salvador', '1992', '8719'], ['El Salvador', '2000', '4893'], ['El Salvador', '2019', '1552'], ['Equatorial Guinea', '1992', '3124'], ['Equatorial Guinea', '2000', '3685'], ['Equatorial Guinea', '2019', '3519'], ['Eritrea', '1992', '12173'], ['Eritrea', '2000', '6371'], ['Eritrea', '2019', '4247'], ['Estonia', '1992', '332'], ['Estonia', '2000', '140'], ['Estonia', '2019', '33'], ['Eswatini', '1970', '3443'], ['Eswatini', '1992', '2188'], ['Eswatini', '2000', '3524'], ['Eswatini', '2019', '1468'], ['Ethiopia', '1992', '434170'], ['Ethiopia', '2000', '392688'], ['Ethiopia', '2019', '177849'], ['Euro area', '1992', '30370'], ['Euro area', '2000', '19195'], ['Euro area', '2019', '11868'], ['Europe & Central Asia', '1992', '354145'], ['Europe & Central Asia', '2000', '217405'], ['Europe & Central Asia', '2019', '88045'], ['Europe & Central Asia (IDA & IBRD)', '1992', '311962'], ['Europe & Central Asia (IDA & IBRD)', '2000', '190654'], ['Europe & Central Asia (IDA & IBRD)', '2019', '71162'], ['Europe & Central Asia (excluding high income)', '1992', '302448'], ['Europe & Central Asia (excluding high income)', '2000', '186651'], ['Europe & Central Asia (excluding high income)', '2019', '69362'], ['European Union', '1992', '54888'], ['European Union', '2000', '31262'], ['European Union', '2019', '16629'], ['Fiji', '1970', '1011'], ['Fiji', '1992', '568'], ['Fiji', '2000', '455'], ['Fiji', '2019', '482'], ['Finland', '1970', '1096'], ['Finland', '1992', '392'], ['Finland', '2000', '249'], ['Finland', '2019', '122'], ['Fragile and conflict affected situations', '1992', '3017647'], ['Fragile and conflict affected situations', '2000', '3021521'], ['Fragile and conflict affected situations', '2019', '2293735'], ['France', '1970', '15536'], ['France', '1992', '5999'], ['France', '2000', '4029'], ['France', '2019', '3251'], ['Gabon', '1992', '3224'], ['Gabon', '2000', '3359'], ['Gabon', '2019', '2807'], ['Gambia', '1970', '6180'], ['Gambia', '1992', '6901'], ['Gambia', '2000', '6080'], ['Gambia', '2019', '4504'], ['Georgia', '1992', '4085'], ['Georgia', '2000', '2035'], ['Georgia', '2019', '513'], ['Germany', '1992', '6184'], ['Germany', '2000', '4053'], ['Germany', '2019', '2959'], ['Ghana', '1970', '78913'], ['Ghana', '1992', '70857'], ['Ghana', '2000', '66595'], ['Ghana', '2019', '40168'], ['Greece', '1970', '4840'], ['Greece', '1992', '1001'], ['Greece', '2000', '686'], ['Greece', '2019', '302'], ['Grenada', '1970', '153'], ['Grenada', '1992', '53'], ['Grenada', '2000', '30'], ['Grenada', '2019', '30'], ['Guatemala', '1970', '41407'], ['Guatemala', '1992', '26739'], ['Guatemala', '2000', '21123'], ['Guatemala', '2019', '10364'], ['Guinea', '1970', '57016'], ['Guinea', '1992', '66370'], ['Guinea', '2000', '57583'], ['Guinea', '2019', '44114'], ['Guinea-Bissau', '1992', '9580'], ['Guinea-Bissau', '2000', '8454'], ['Guinea-Bissau', '2019', '5111'], ['Guyana', '1970', '1856'], ['Guyana', '1992', '1203'], ['Guyana', '2000', '908'], ['Guyana', '2019', '453'], ['Haiti', '1970', '43119'], ['Haiti', '1992', '35356'], ['Haiti', '2000', '27498'], ['Haiti', '2019', '16890'], ['Heavily indebted poor countries (HIPC)', '1992', '2814513'], ['Heavily indebted poor countries (HIPC)', '2000', '2797682'], ['Heavily indebted poor countries (HIPC)', '2019', '1810727'], ['High income', '1992', '160982'], ['High income', '2000', '104826'], ['High income', '2019', '63377'], ['Honduras', '1970', '18119'], ['Honduras', '1992', '10232'], ['Honduras', '2000', '8145'], ['Honduras', '2019', '3480'], ['Hungary', '1970', '5863'], ['Hungary', '1992', '1929'], ['Hungary', '2000', '990'], ['Hungary', '2019', '335'], ['IBRD only', '1992', '6418326'], ['IBRD only', '2000', '4528105'], ['IBRD only', '2019', '1666290'], ['IDA & IBRD total', '1992', '11831401'], ['IDA & IBRD total', '2000', '9629809'], ['IDA & IBRD total', '2019', '5122830'], ['IDA blend', '1992', '1763297'], ['IDA blend', '2000', '1752343'], ['IDA blend', '2019', '1444237'], ['IDA only', '1992', '3649778'], ['IDA only', '2000', '3349361'], ['IDA only', '2019', '2012303'], ['IDA total', '1992', '5413075'], ['IDA total', '2000', '5101704'], ['IDA total', '2019', '3456540'], ['Iceland', '1970', '70'], ['Iceland', '1992', '27'], ['Iceland', '2000', '17'], ['Iceland', '2019', '8'], ['India', '1970', '4470583'], ['India', '1992', '3248643'], ['India', '2000', '2532713'], ['India', '2019', '824448'], ['Indonesia', '1970', '738264'], ['Indonesia', '1992', '352864'], ['Indonesia', '2000', '236672'], ['Indonesia', '2019', '114994'], ['Iran', '1992', '85268'], ['Iran', '2000', '40392'], ['Iran', '2019', '21248'], ['Iraq', '1970', '49026'], ['Iraq', '1992', '34601'], ['Iraq', '2000', '36067'], ['Iraq', '2019', '28801'], ['Ireland', '1970', '1428'], ['Ireland', '1992', '414'], ['Ireland', '2000', '387'], ['Ireland', '2019', '203'], ['Israel', '1970', '2075'], ['Israel', '1992', '1065'], ['Israel', '2000', '849'], ['Israel', '2019', '624'], ['Italy', '1970', '30980'], ['Italy', '1992', '4924'], ['Italy', '2000', '2964'], ['Italy', '2019', '1432'], ['Jamaica', '1970', '3811'], ['Jamaica', '1992', '1735'], ['Jamaica', '2000', '1258'], ['Jamaica', '2019', '652'], ['Japan', '1970', '33427'], ['Japan', '1992', '7790'], ['Japan', '2000', '5295'], ['Japan', '2019', '2343'], ['Jordan', '1970', '7151'], ['Jordan', '1992', '4498'], ['Jordan', '2000', '4305'], ['Jordan', '2019', '3355'], ['Kazakhstan', '1992', '18432'], ['Kazakhstan', '2000', '10050'], ['Kazakhstan', '2019', '3976'], ['Kenya', '1970', '81830'], ['Kenya', '1992', '108489'], ['Kenya', '2000', '120720'], ['Kenya', '2019', '63623'], ['Kiribati', '1970', '248'], ['Kiribati', '1992', '231'], ['Kiribati', '2000', '182'], ['Kiribati', '2019', '164'], ['Kuwait', '1970', '2288'], ['Kuwait', '1992', '664'], ['Kuwait', '2000', '540'], ['Kuwait', '2019', '448'], ['Kyrgyzstan', '1992', '8655'], ['Kyrgyzstan', '2000', '5327'], ['Kyrgyzstan', '2019', '2824'], ['Laos', '1992', '25885'], ['Laos', '2000', '18262'], ['Laos', '2019', '7520'], ['Late-demographic dividend', '1992', '1840220'], ['Late-demographic dividend', '2000', '1016926'], ['Late-demographic dividend', '2019', '287979'], ['Latin America & Caribbean', '1992', '586039'], ['Latin America & Caribbean', '2000', '380818'], ['Latin America & Caribbean', '2019', '169465'], ['Latin America & Caribbean (IDA & IBRD)', '1992', '583763'], ['Latin America & Caribbean (IDA & IBRD)', '2000', '379378'], ['Latin America & Caribbean (IDA & IBRD)', '2019', '168767'], ['Latin America & Caribbean (excluding high income)', '1992', '563471'], ['Latin America & Caribbean (excluding high income)', '2000', '364008'], ['Latin America & Caribbean (excluding high income)', '2019', '154456'], ['Latvia', '1992', '644'], ['Latvia', '2000', '278'], ['Latvia', '2019', '74'], ['Least developed countries: UN classification', '1992', '3568885'], ['Least developed countries: UN classification', '2000', '3298994'], ['Least developed countries: UN classification', '2019', '1968312'], ['Lebanon', '1970', '4544'], ['Lebanon', '1992', '2399'], ['Lebanon', '2000', '1675'], ['Lebanon', '2019', '839'], ['Lesotho', '1970', '7765'], ['Lesotho', '1992', '5080'], ['Lesotho', '2000', '6523'], ['Lesotho', '2019', '4831'], ['Liberia', '1970', '18330'], ['Liberia', '1992', '24207'], ['Liberia', '2000', '20532'], ['Liberia', '2019', '13365'], ['Libya', '1970', '13978'], ['Libya', '1992', '4784'], ['Libya', '2000', '3258'], ['Libya', '2019', '1448'], ['Lithuania', '1992', '939'], ['Lithuania', '2000', '375'], ['Lithuania', '2019', '106'], ['Low & middle income', '1992', '11828913'], ['Low & middle income', '2000', '9638892'], ['Low & middle income', '2019', '5115570'], ['Low income', '1992', '2389448'], ['Low income', '2000', '2326394'], ['Low income', '2019', '1509340'], ['Lower middle income', '1992', '6927869'], ['Lower middle income', '2000', '5804098'], ['Lower middle income', '2019', '3074253'], ['Luxembourg', '1970', '102'], ['Luxembourg', '1992', '38'], ['Luxembourg', '2000', '25'], ['Luxembourg', '2019', '18'], ['Madagascar', '1992', '76270'], ['Madagascar', '2000', '67044'], ['Madagascar', '2019', '43110'], ['Malawi', '1970', '78987'], ['Malawi', '1992', '96627'], ['Malawi', '2000', '80433'], ['Malawi', '2019', '25712'], ['Malaysia', '1970', '19341'], ['Malaysia', '1992', '7770'], ['Malaysia', '2000', '5253'], ['Malaysia', '2019', '4513'], ['Maldives', '1970', '1455'], ['Maldives', '1992', '675'], ['Maldives', '2000', '243'], ['Maldives', '2019', '54'], ['Mali', '1970', '107675'], ['Mali', '1992', '91743'], ['Mali', '2000', '94723'], ['Mali', '2019', '73632'], ['Malta', '1970', '141'], ['Malta', '1992', '56'], ['Malta', '2000', '34'], ['Malta', '2019', '30'], ['Marshall Islands', '1970', '72'], ['Marshall Islands', '1992', '90'], ['Marshall Islands', '2000', '76'], ['Marshall Islands', '2019', '44'], ['Mauritania', '1970', '9721'], ['Mauritania', '1992', '9384'], ['Mauritania', '2000', '10903'], ['Mauritania', '2019', '10699'], ['Mauritius', '1970', '1959'], ['Mauritius', '1992', '468'], ['Mauritius', '2000', '381'], ['Mauritius', '2019', '206'], ['Mexico', '1970', '228007'], ['Mexico', '1992', '98953'], ['Mexico', '2000', '66468'], ['Mexico', '2019', '31368'], ['Micronesia (country)', '1992', '179'], ['Micronesia (country)', '2000', '172'], ['Micronesia (country)', '2019', '75'], ['Middle East & North Africa', '1992', '495472'], ['Middle East & North Africa', '2000', '326654'], ['Middle East & North Africa', '2019', '220113'], ['Middle East & North Africa (IDA & IBRD)', '1992', '464387'], ['Middle East & North Africa (IDA & IBRD)', '2000', '307743'], ['Middle East & North Africa (IDA & IBRD)', '2019', '210169'], ['Middle East & North Africa (excluding high income)', '1992', '468483'], ['Middle East & North Africa (excluding high income)', '2000', '311322'], ['Middle East & North Africa (excluding high income)', '2019', '212940'], ['Middle income', '1992', '9497584'], ['Middle income', '2000', '7355885'], ['Middle income', '2019', '3632497'], ['Moldova', '1992', '2608'], ['Moldova', '2000', '1567'], ['Moldova', '2019', '584'], ['Monaco', '1992', '2'], ['Monaco', '2000', '2'], ['Monaco', '2019', '2'], ['Mongolia', '1992', '6570'], ['Mongolia', '2000', '3094'], ['Mongolia', '2019', '1183'], ['Montenegro', '1992', '153'], ['Montenegro', '2000', '121'], ['Montenegro', '2019', '17'], ['Morocco', '1970', '125975'], ['Morocco', '1992', '51310'], ['Morocco', '2000', '31607'], ['Morocco', '2019', '14511'], ['Mozambique', '1970', '111633'], ['Mozambique', '1992', '142252'], ['Mozambique', '2000', '127995'], ['Mozambique', '2019', '81507'], ['Myanmar', '1992', '121827'], ['Myanmar', '2000', '100470'], ['Myanmar', '2019', '41896'], ['Namibia', '1992', '3735'], ['Namibia', '2000', '4181'], ['Namibia', '2019', '2954'], ['Nauru', '1992', '17'], ['Nauru', '2000', '14'], ['Nauru', '2019', '9'], ['Nepal', '1970', '130479'], ['Nepal', '1992', '91727'], ['Nepal', '2000', '61174'], ['Nepal', '2019', '17296'], ['Netherlands', '1970', '3687'], ['Netherlands', '1992', '1490'], ['Netherlands', '2000', '1217'], ['Netherlands', '2019', '696'], ['New Zealand', '1970', '1296'], ['New Zealand', '1992', '577'], ['New Zealand', '2000', '413'], ['New Zealand', '2019', '283'], ['Nicaragua', '1970', '18030'], ['Nicaragua', '1992', '8943'], ['Nicaragua', '2000', '5286'], ['Nicaragua', '2019', '2212'], ['Niger', '1992', '138430'], ['Niger', '2000', '127077'], ['Niger', '2019', '81635'], ['Nigeria', '1970', '688440'], ['Nigeria', '1992', '876924'], ['Nigeria', '2000', '921271'], ['Nigeria', '2019', '857899'], ['North America', '1992', '44533'], ['North America', '2000', '35399'], ['North America', '2019', '27225'], ['North Korea', '1992', '23276'], ['North Korea', '2000', '24921'], ['North Korea', '2019', '6116'], ['North Macedonia', '1992', '1147'], ['North Macedonia', '2000', '424'], ['North Macedonia', '2019', '137'], ['Norway', '1970', '1070'], ['Norway', '1992', '427'], ['Norway', '2000', '283'], ['Norway', '2019', '145'], ['OECD members', '1992', '341039'], ['OECD members', '2000', '223356'], ['OECD members', '2019', '108114'], ['Oman', '1970', '7510'], ['Oman', '1992', '2181'], ['Oman', '2000', '932'], ['Oman', '2019', '1034'], ['Other small states', '1992', '51905'], ['Other small states', '2000', '50664'], ['Other small states', '2019', '33508'], ['Pacific island small states', '1992', '1957'], ['Pacific island small states', '2000', '1690'], ['Pacific island small states', '2019', '1539'], ['Pakistan', '1970', '456326'], ['Pakistan', '1992', '594050'], ['Pakistan', '2000', '520226'], ['Pakistan', '2019', '399418'], ['Palau', '1992', '12'], ['Palau', '2000', '9'], ['Palau', '2019', '4'], ['Palestine', '1992', '4096'], ['Palestine', '2000', '3579'], ['Palestine', '2019', '2771'], ['Panama', '1970', '3681'], ['Panama', '1992', '1912'], ['Panama', '2000', '1826'], ['Panama', '2019', '1175'], ['Papua New Guinea', '1970', '15722'], ['Papua New Guinea', '1992', '13229'], ['Papua New Guinea', '2000', '13656'], ['Papua New Guinea', '2019', '10393'], ['Paraguay', '1970', '7050'], ['Paraguay', '1992', '5967'], ['Paraguay', '2000', '4840'], ['Paraguay', '2019', '2774'], ['Peru', '1970', '91080'], ['Peru', '1992', '47730'], ['Peru', '2000', '23759'], ['Peru', '2019', '7563'], ['Philippines', '1970', '114288'], ['Philippines', '1992', '103299'], ['Philippines', '2000', '85573'], ['Philippines', '2019', '59751'], ['Poland', '1970', '19533'], ['Poland', '1992', '8920'], ['Poland', '2000', '3621'], ['Poland', '2019', '1624'], ['Portugal', '1970', '12837'], ['Portugal', '1992', '1398'], ['Portugal', '2000', '808'], ['Portugal', '2019', '295'], ['Post-demographic dividend', '1992', '123447'], ['Post-demographic dividend', '2000', '84678'], ['Post-demographic dividend', '2019', '53832'], ['Pre-demographic dividend', '1992', '3395972'], ['Pre-demographic dividend', '2000', '3509420'], ['Pre-demographic dividend', '2019', '2634861'], ['Qatar', '1992', '190'], ['Qatar', '2000', '143'], ['Qatar', '2019', '172'], ['Romania', '1970', '23388'], ['Romania', '1992', '8609'], ['Romania', '2000', '4675'], ['Romania', '2019', '1317'], ['Russia', '1992', '39511'], ['Russia', '2000', '25391'], ['Russia', '2019', '10556'], ['Rwanda', '1970', '38961'], ['Rwanda', '1992', '50380'], ['Rwanda', '2000', '51321'], ['Rwanda', '2019', '13310'], ['Saint Kitts and Nevis', '1992', '24'], ['Saint Kitts and Nevis', '2000', '19'], ['Saint Kitts and Nevis', '2019', '11'], ['Saint Lucia', '1970', '297'], ['Saint Lucia', '1992', '79'], ['Saint Lucia', '2000', '56'], ['Saint Lucia', '2019', '48'], ['Saint Vincent and the Grenadines', '1970', '275'], ['Saint Vincent and the Grenadines', '1992', '59'], ['Saint Vincent and the Grenadines', '2000', '49'], ['Saint Vincent and the Grenadines', '2019', '23'], ['Samoa', '1970', '417'], ['Samoa', '1992', '150'], ['Samoa', '2000', '111'], ['Samoa', '2019', '72'], ['San Marino', '1992', '3'], ['San Marino', '2000', '2'], ['San Marino', '2019', '0'], ['Sao Tome and Principe', '1970', '260'], ['Sao Tome and Principe', '1992', '516'], ['Sao Tome and Principe', '2000', '460'], ['Sao Tome and Principe', '2019', '198'], ['Saudi Arabia', '1992', '21802'], ['Saudi Arabia', '2000', '12073'], ['Saudi Arabia', '2019', '3964'], ['Senegal', '1970', '57516'], ['Senegal', '1992', '43741'], ['Senegal', '2000', '47921'], ['Senegal', '2019', '24651'], ['Serbia', '1992', '3366'], ['Serbia', '2000', '1519'], ['Serbia', '2019', '441'], ['Seychelles', '1970', '136'], ['Seychelles', '1992', '25'], ['Seychelles', '2000', '21'], ['Seychelles', '2019', '23'], ['Sierra Leone', '1970', '41498'], ['Sierra Leone', '1992', '49443'], ['Sierra Leone', '2000', '45600'], ['Sierra Leone', '2019', '27580'], ['Singapore', '1970', '1336'], ['Singapore', '1992', '349'], ['Singapore', '2000', '200'], ['Singapore', '2019', '128'], ['Slovakia', '1992', '1043'], ['Slovakia', '2000', '539'], ['Slovakia', '2019', '325'], ['Slovenia', '1992', '193'], ['Slovenia', '2000', '97'], ['Slovenia', '2019', '42'], ['Small states', '1992', '58660'], ['Small states', '2000', '55909'], ['Small states', '2019', '37015'], ['Solomon Islands', '1970', '713'], ['Solomon Islands', '1992', '461'], ['Solomon Islands', '2000', '438'], ['Solomon Islands', '2019', '416'], ['Somalia', '1992', '59475'], ['Somalia', '2000', '71078'], ['Somalia', '2019', '72126'], ['South Africa', '1992', '60799'], ['South Africa', '2000', '72667'], ['South Africa', '2019', '40631'], ['South Asia', '1992', '4525053'], ['South Asia', '2000', '3548083'], ['South Asia', '2019', '1405945'], ['South Asia (IDA & IBRD)', '1992', '4525053'], ['South Asia (IDA & IBRD)', '2000', '3548083'], ['South Asia (IDA & IBRD)', '2019', '1405945'], ['South Korea', '1970', '58869'], ['South Korea', '1992', '8851'], ['South Korea', '2000', '4448'], ['South Korea', '2019', '1200'], ['South Sudan', '1992', '59243'], ['South Sudan', '2000', '45908'], ['South Sudan', '2019', '36916'], ['Spain', '1992', '3289'], ['Spain', '2000', '2119'], ['Spain', '2019', '1221'], ['Sri Lanka', '1970', '26535'], ['Sri Lanka', '1992', '7625'], ['Sri Lanka', '2000', '5714'], ['Sri Lanka', '2019', '2378'], ['Sub-Saharan Africa', '1992', '3911089'], ['Sub-Saharan Africa', '2000', '3984296'], ['Sub-Saharan Africa', '2019', '2843317'], ['Sub-Saharan Africa (IDA & IBRD)', '1992', '3911089'], ['Sub-Saharan Africa (IDA & IBRD)', '2000', '3984296'], ['Sub-Saharan Africa (IDA & IBRD)', '2019', '2843317'], ['Sub-Saharan Africa (excluding high income)', '1992', '3911064'], ['Sub-Saharan Africa (excluding high income)', '2000', '3984275'], ['Sub-Saharan Africa (excluding high income)', '2019', '2843294'], ['Sudan', '1970', '71629'], ['Sudan', '1992', '108276'], ['Sudan', '2000', '108266'], ['Sudan', '2019', '78028'], ['Suriname', '1992', '473'], ['Suriname', '2000', '348'], ['Suriname', '2019', '191'], ['Sweden', '1970', '1542'], ['Sweden', '1992', '717'], ['Sweden', '2000', '379'], ['Sweden', '2019', '305'], ['Switzerland', '1970', '1856'], ['Switzerland', '1992', '605'], ['Switzerland', '2000', '435'], ['Switzerland', '2019', '353'], ['Syria', '1970', '29107'], ['Syria', '1992', '15040'], ['Syria', '2000', '11637'], ['Syria', '2019', '9195'], ['Tajikistan', '1992', '22763'], ['Tajikistan', '2000', '15889'], ['Tajikistan', '2019', '9377'], ['Tanzania', '1970', '131710'], ['Tanzania', '1992', '179957'], ['Tanzania', '2000', '172198'], ['Tanzania', '2019', '103222'], ['Thailand', '1970', '135377'], ['Thailand', '1992', '35267'], ['Thailand', '2000', '20327'], ['Thailand', '2019', '6444'], ['Timor', '1992', '4996'], ['Timor', '2000', '3763'], ['Timor', '2019', '1645'], ['Togo', '1970', '20861'], ['Togo', '1992', '21814'], ['Togo', '2000', '21938'], ['Togo', '2019', '17331'], ['Tonga', '1970', '151'], ['Tonga', '1992', '61'], ['Tonga', '2000', '50'], ['Tonga', '2019', '42'], ['Trinidad and Tobago', '1970', '1319'], ['Trinidad and Tobago', '1992', '702'], ['Trinidad and Tobago', '2000', '527'], ['Trinidad and Tobago', '2019', '312'], ['Tunisia', '1970', '36407'], ['Tunisia', '1992', '10450'], ['Tunisia', '2000', '5068'], ['Tunisia', '2019', '3398'], ['Turkey', '1970', '252895'], ['Turkey', '1992', '90461'], ['Turkey', '2000', '52806'], ['Turkey', '2019', '13149'], ['Turkmenistan', '1992', '10174'], ['Turkmenistan', '2000', '7483'], ['Turkmenistan', '2019', '5793'], ['Tuvalu', '1992', '13'], ['Tuvalu', '2000', '10'], ['Tuvalu', '2019', '7'], ['Uganda', '1970', '81900'], ['Uganda', '1992', '150958'], ['Uganda', '2000', '160536'], ['Uganda', '2019', '74053'], ['Ukraine', '1992', '11845'], ['Ukraine', '2000', '7572'], ['Ukraine', '2019', '3514'], ['United Arab Emirates', '1970', '855'], ['United Arab Emirates', '1992', '718'], ['United Arab Emirates', '2000', '579'], ['United Arab Emirates', '2019', '750'], ['United Kingdom', '1970', '18294'], ['United Kingdom', '1992', '6301'], ['United Kingdom', '2000', '4612'], ['United Kingdom', '2019', '3313'], ['United States', '1970', '81182'], ['United States', '1992', '41577'], ['United States', '2000', '33310'], ['United States', '2019', '25352'], ['Upper middle income', '1992', '2516201'], ['Upper middle income', '2000', '1513879'], ['Upper middle income', '2019', '541899'], ['Uruguay', '1970', '3085'], ['Uruguay', '1992', '1237'], ['Uruguay', '2000', '921'], ['Uruguay', '2019', '337'], ['Uzbekistan', '1992', '50486'], ['Uzbekistan', '2000', '35606'], ['Uzbekistan', '2019', '12045'], ['Vanuatu', '1970', '379'], ['Vanuatu', '1992', '175'], ['Vanuatu', '2000', '173'], ['Vanuatu', '2019', '224'], ['Venezuela', '1970', '26080'], ['Venezuela', '1992', '15594'], ['Venezuela', '2000', '12361'], ['Venezuela', '2019', '12620'], ['Vietnam', '1970', '126491'], ['Vietnam', '1992', '88316'], ['Vietnam', '2000', '42632'], ['Vietnam', '2019', '31689'], ['World', '1992', '11994515'], ['World', '2000', '9749206'], ['World', '2019', '5188872'], ['Yemen', '1970', '107303'], ['Yemen', '1992', '74980'], ['Yemen', '2000', '64423'], ['Yemen', '2019', '50312'], ['Zambia', '1970', '35157'], ['Zambia', '1992', '65786'], ['Zambia', '2000', '68180'], ['Zambia', '2019', '38460'], ['Zimbabwe', '1970', '27263'], ['Zimbabwe', '1992', '31149'], ['Zimbabwe', '2000', '34362'], ['Zimbabwe', '2019', '24166']]
                            

    Denna data kommer från ett större dataset. Om ni är intresserade så hittar ni det här: se originalfilen.

    Lösningsförslag

    Detta lösningsförslag blev längre än tänkt. Det är bara koncept som vi har gått igenom men det kan bli svårt när man ser allt samtidigt. Ta det lungt och försök förstå en rad i taget.

    
    # lägg variabeln data högst upp
    
    # Uppgift a:
    # vi börjar med att utforska datan lite, det är en lista av listor med format [land, år, dödstal] så vi kan skriva ut det första landet och året nedan
    print(data[0])
    
    # koden data[0] returnerar den lista som finns på plats 0 i data, för att plocka ut ett värde ur en underlista används två hakparenteser
    print(data[0][2]) # detta ger dödstal i afganistan 1970
    
    # Uppgift b:
    # här skapar vi två variabler där vi sparar det största och minsta värdet vi hittar, vi tar bara valfritt värde från listan för att ha något att börja jämföra med
    leastDeaths1970 = data[0]
    mostDeaths1970 = data[0]
    
    # detta är en for-loop där koden som är under och indragen kommer köras en gång för varje värde i listan data, d kommer få varje värde i listan en gång
    for d in data:
        
        # om året är 1970 och dödstalen är minre än det vi hittils hittat har minst
        # lägg märket till att vi måste använda int() för att jämföra dödstalen på rätt sätt
        if d[1] == '1970' and int(d[2]) < int(leastDeaths1970[2]):
            
            # då ersätter vi vårt minsta värde med det nya
            leastDeaths1970 = d
    
        # om året är 1970 och dödstalen är mer än det land vi hittils har hittat har flest
        if d[1] == '1970' and int(d[2]) > int(mostDeaths1970[2]):
    
            # då ersätter vi vårt största värde med det nya
            mostDeaths1970 = d
    
    print("Flest dödsfall 1970:", mostDeaths1970)
    print("Minst dödsfall 1970:", leastDeaths1970)
    
    # Uppgift c: här kan samma kod som för uppgift b användas, om man ändrar årtalen
    
    # Uppgift d: detta är bra att förstå men förmodligen lite överkurs
    
    # ny variabel för att spara förändringar
    change = []
    
    # vi ska nu loopa över datan två gånger, för att hitta år 1970 och 2019 för samma land 
    for d1 in data:
        
        for d2 in data:
    
            # här ser vi om det är samma land (namnen är lika) och årtalen skiljer
            if d1[0] == d2[0] and d1[1] == '1970' and d2[1] == '2019':
    
                # då beräknar vi förändringen i dödstal
                förändring = int(d2[2]) / int(d1[2])
    
                land = d1[0] # och tar fram landets namn
    
                # vi lägger förändringen i en ny lista med endast namn och förändringen för varje land
                change.append( [ land, förändring ] )
    
                break
    
    # nu försöker vi hitta landet med störst minskning enligt samma princip som på uppg b
    largestDecrease = change[0]
    
    for c in change:
    
        if c[1] < largestDecrease[1]:
            
            largestDecrease = c
    
    print("Störst minskning:", largestDecrease)
    
    # Uppgift e. Lägg till en largestIncrease i sista for-loopen och se vad svaret blir