如何根据用户输入匹配集合中的元素?

2024-06-08 22:08:33 发布

您现在位置:Python中文网/ 问答频道 /正文

全部

我有下面的数据框,我试图找到独特的职业在我的“工作”列,并根据用户输入,我需要打印输出说:“客户是合格的”否则“客户是不合格的”。我下面的代码只是转到else语句。我不确定出了什么问题。任何意见都将不胜感激

我的代码到目前为止

df=pd.read_csv('bank-data.csv')
uniq_job_set=list(set(df['job'])) #Set of unique jobs
 prof=input('Enter Profession') #Input from user
 if prof==uniq_job_set:  
         print('Yes, Client is eligible')    
 else:
         print('No, Client is Not-eligible')

使用的数据帧:

  age          job   marital    y
0   20      student    single  yes
1   32   management    single  yes
2   49   technician   married  yes
3   32  blue-collar   married  yes
4   33   management   married  yes
5   61       admin.   married  yes
6   45  blue-collar  divorced  yes
7   34   technician   married  yes
8   37   management   married  yes
9   27       admin.  divorced  yes

Tags: csv数据代码df客户jobmanagementelse
1条回答
网友
1楼 · 发布于 2024-06-08 22:08:33

问题出在if语句中。您正在比较一个列表和一个字符串,它总是False。改用if prof in uniq_job_set

uniq_job_set=list(set(df['job'])) 
prof=input('Enter Profession') 
if prof in uniq_job_set:  
    print('Yes, Client is eligible')    
else:
    print('No, Client is Not-eligible')

相关问题 更多 >