0

我正在使用 Pandas 访问我创建的 CSV 文件。我使用 data.name.tolist() 函数创建了一个列表,称为“ID”,存储用户的所有 ID 号(目前这些 ID 是 1-6,但以后会变成 5 位数字),我希望要做的就是将输入的ID号与ID列表进行比较,并根据输入的ID是否在列表中提供输出。这样做的最佳方法是什么?

干杯

    import csv
    import pandas

    colnames = ['name', 'ID', 'carPass', 'cardLost']
    data = pandas.read_csv('info.csv', names = colnames)
    IDs = data.ID.tolist()

    #Asks the user what their ID Number is
    entry = int(input("What is your id number?")).strip()

    if entry isin IDs:
        print("YES")
    else:
        print("NO")

编辑:CSV 示例

    name,ID,carPass,cardLost
    James,1,yes,no
    Daniel,2,no,no
    Georgia,3,yes,yes
    Norman,4,no,no
    Tom,5,no,no
    Sam,6,yes,no

目前唯一相关的数据是 ID 和 carPass 值。

4

1 回答 1

2

输入文件info.csv

 name,ID,carPass,cardLost
 dog,34,yes,yes
 cat,78,yes,no
 bird,45,no,no
 lizard,84,no,yes

这应该足以找到具有 ID 号的条目。

import pandas as pd

df = pd.read_csv("info.csv")
entry = int(input("What is your id number? "))

if entry in df["ID"].tolist():
    print(df[df["ID"] == entry])
else:
    print("No entries with that ID number.")
于 2017-06-12T01:47:54.947 回答