我正在尝试做一个程序,我的学生将输入他们的身份证号码,这样我就可以(后面的代码)自动发送出勤,并记录谁交了作业和谁没有这样的电子邮件可以发送给家长。我有其他的一切,但我不能得到学生证的工作输入。你知道吗
我想做的是:
1) 确保其输入长度为7个字符
2) 检查他们的ID是否存在于“fakeID”中
2a)让学生用“是/否”从“类名”中确认自己的名字。
2b)把他们的名字加到inputIDList
3) 如果输入==到999999 0,则退出循环。你知道吗
它在做什么:
1) 征求意见
2) 在代码中继续,而不是循环
3) 不附加inputIDList
我觉得这对我现在的技术水平来说太复杂了。你知道吗
编辑:
循环没有检查输入的ID是否在我的fakeID
列表中。
而且,它不是循环的,所以一旦输入,它就继续下一组代码。你知道吗
编辑2: 更新的代码。:D个
fakeID = ['1111111','1111112','1111113','1111114','1111115']
classNames = ['name1', 'name2', 'name3', 'name4', 'name5']
toplist = list(zip(fakeID, classNames))
inputIDList =[]
def inputID():
while True:
id = input('Please enter your student ID and hit Enter')
if id == '9999990':
print('Done')
break
if id in fakeID:
inputIDList.append(id)
print('recorder')
continue
if id not in fakeID:
print('I do not know this ID. Please try again.')
continue
正如阿巴内特所说,你需要重新构造你的方法。但我想我找到了你被困的地方。 检查完输入数字的长度后,应该检查该数字是否与任何
fakeID
匹配,并获得相应的类名。 所以你的第一个循环应该是这样的而不是
因为
inputIDList
是空的,所以程序不会进入循环。在改变的循环中你应该检查一下这是我所能理解的你想要的行动的极限。但如果你需要进一步的帮助,尽管问。 干杯。你知道吗
如果我正确理解了您的问题,那么我假设您正在尝试将学生的ID号保存在inputIdList中,然后检查特定ID是否在inputIdList中。在最后一个if条件中,您试图将列表类型的对象与字符串类型的对象进行比较,这肯定会引发类型错误。而是定义以下函数并在if条件中调用它。你知道吗
list.index()方法尝试在列表中查找元素并返回元素的索引号。然后在if条件下调用此函数。你知道吗
此外,如果已经将
inputIdList = [""]
初始化为inputIdList = []
,则无需将其赋值。 如果问题仍然存在,请在线程中发送输出。你知道吗下面是一些让你开始的东西:
相关问题 更多 >
编程相关推荐