Python: à l'Aide d'Excel en fichier CSV de ne lire que certaines colonnes et de lignes

Alors que je peux lire fichier csv au lieu de la lecture de tout fichier comment puis-je imprimer uniquement certaines lignes et de colonnes?

Imagine que si c'est Excel:

  A              B              C                  D                    E
State  |Heart Disease Rate| Stroke Death Rate | HIV Diagnosis Rate |Teen Birth Rate

Alabama     235.5             54.5                 16.7                 18.01

Alaska      147.9             44.3                  3.2                  N/A    

Arizona     152.5             32.7                 11.9                  N/A    

Arkansas    221.8             57.4                 10.2                  N/A    

California  177.9             42.2                  N/A                  N/A    

Colorado    145.3             39                    8.4                 9.25    

Heres ce que j'ai:

import csv

try:
    risk = open('riskfactors.csv', 'r', encoding="windows-1252").read() #find the file

except:
    while risk != "riskfactors.csv":  # if the file cant be found if there is an error
    print("Could not open", risk, "file")
    risk = input("\nPlease try to open file again: ")
else:
    with open("riskfactors.csv") as f:
        reader = csv.reader(f, delimiter=' ', quotechar='|')

        data = []
        for row in reader:# Number of rows including the death rates 
            for col in (2,4): # The columns I want read   B and D
                data.append(row)
                data.append(col)
        for item in data:
            print(item) #print the rows and columns

J'ai besoin de lire seulement la colonne B et de D avec toutes les statistiques à lire comme ceci:

  A              B                D                    
 State  |Heart Disease Rate| HIV Diagnosis Rate |

 Alabama       235.5             16.7                

  Alaska       147.9             3.2                     

  Arizona      152.5             11.9                     

  Arkansas     221.8             10.2                    

 California    177.9             N/A                     

 Colorado      145.3             8.4                

Édité

pas d'erreurs

Des idées sur la façon de remédier à cette situation? Tout ce que j'ai essayer ne fonctionne pas. Toute aide ou conseils sont appréciés.

  • TypeError: append() prend exactement un argument (2) Vous avez besoin de lire et d'évaluer les erreurs. Ne pas les ignorer.
  • J'ai réalisé que et fait le changement, mais maintenant son impression de numéros et de l'ensemble de la liste
InformationsquelleAutor Thomas Jones | 2013-03-08