繁体   English   中英

我怎么能在 python 的 for 循环中使用 function

[英]How could I use a function thats inside a for loop in python

我有一个 function 打印出通过考试的学生。 但是,如果我像这样执行 function:

csv_dict_reader = csv.reader(
    read_obj,
    delimiter=";",
)
next(csv_dict_reader)
for row in csv_dict_reader:

    if row[11]:
        #     allPassedStudents.append(row[0])
        passedDate = datetime.strptime(row[11], "%d-%m-%Y %H:%M")

    if passedDate:

        if passedDate < end_date:
            fastStudent.append(row[0])
            print(fastStudent)

我得到这样的打印:`

['1']
['1', '2']
['1', '2', '3']
['1', '2', '3', '41']
['1', '2', '3', '41', '49']

这些数字是学生编号。 我怎么能得到它,所以它只显示给每个学生一次。 学生在我的 function 中是行 [0],行 [11] 是他们通过的日期

那这个呢:

csv_dict_reader = csv.reader(read_obj, delimiter=';',)
    next(csv_dict_reader)
    for row in csv_dict_reader:
        
        if row[11]:
        #     allPassedStudents.append(row[0])
            passedDate = datetime.strptime(row[11], '%d-%m-%Y %H:%M') 
    
        if passedDate:

            if passedDate < end_date:
                fastStudent.append(row[0])
    print(fastStudent)

我没有你的数据集来测试它。 但现在我想它应该可以工作了。

任何一个:

  • 仅在循环执行print(fastStudent) (因为fastStudent是您将这些 id 收集到的列表),或者
  • 在循环中执行print(row[0]) (因此您只打印刚刚附加的 ID)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM