我有一个包含人员信息的文件,包括出生日期,并希望能够以dd / mm / yyyy格式拨打月份,以便从出生月份开始查找人名。到目前为止我有这个:
def DOBSearch():
DOBsrch = int(input("Please enter the birth month: "))
for row in BkRdr:
DOB = row[6]
day,month,year = DOB.split("/")
if DOB == month:
surname = row[0]
firstname = row[1]
print(firstname, " ",surname)
addrsBk.close
但它返回
Please enter the birth month: 02
#(nothing is printed)
答案 0 :(得分:1)
您需要将ints
与ints
或strs
与strs
进行比较。
DOBsrch
是int
,但DOB
可能是str
(因为您使用其split
方法)。
所以你需要
day,month,year = map(int, DOB.split("/"))
或者,至少
day,month,year = DOB.split("/")
month = int(month)
另外,正如@devnull指出的那样,您可能希望将month
与DOBsrch
进行比较,而不是DOB
:
if DOBsrch == month: