仅打印.csv文件中的某些行

The*_*uru 2 python csv

我有一个.csv文件,其中包含与此类似的出生日期字段:

John,Smith,34 La La Lane,14/03/85,johnsmith@email.com
Sarah,Second,42 Wallaby Way,11/06/92,sarahsecond@email.com
Third,Example,99 Peacock Terrace,04/12/89,thirdexample@email.com
Run Code Online (Sandbox Code Playgroud)

我想制作一个程序,只打印某个月出生的条目文件中的行(在这种情况下,月份是在第一个斜杠之后,即dd/mm/yy).

因此,如果所需的月份是3月份,它将打印出John Smith的条目.

对此的任何帮助都会很棒,我已经挣扎了一段时间

gor*_*ron 8

我不确定你正在努力解决哪个问题,所以我会给出一个一般性的答案.Python有一个csv阅读器,你可以像这样使用:

import csv
desiredMonth = 3
with open('people.csv', 'rb') as csvfile:
    content = csv.reader(csvfile, delimiter=',')
    for row in content:
        month = int(row[3].split('/')[1])
        if month == desiredMonth:
            # print the row or store it in a list for later printing
Run Code Online (Sandbox Code Playgroud)

row已经将你分成一个列表,所以row[3]将是生日.split()然后将月份部分分成几部分,并[1]给出第二部分,即月份.将其转换int为一个好主意,这样您就可以轻松地将其与您想要的任何月份进行比较.