2
我正在编写代码以获取日期(日月和年)的输入以及他们要重复执行任务的次数) 我想使用for循环使用时间作为边界。 代码:TypeError:'>'在'int'和'str'实例之间不受支持
def addtimeslot():
times = int(times_repeated.get())
print(times_repeated.get())
variable_end.get()
day = variable_day.get()
month = variable_month.get()
year = variable_year.get()
fulldateadd = datetime.date(year, month, day)
name1 = str(name.get())
minute = int('00')
second = int('00')
hour1 = variable_st.get()
starttimehour = str(datetime.time(hour1,minute,second))
hour2 = variable_end.get()
endtimehour = str(datetime.time(hour2,minute,second))
for i in range(0 , times):
fulldateadd = datetime.date(year, month, day)
cursor.execute('''INSERT INTO dates (Date, Name, Start, End) VALUES(?,?,?,?);''', (fulldateadd , name1, starttimehour, endtimehour))
day = int(day) + 7
if day > '31':
month = int(month) + 1
我得到这个错误:
TypeError: '>' not supported between instances of 'int' and 'str'
你已经用'day = int(day)+ 7'创建了''''int',所以测试应该是'if day> 31:',即比较一个int'31'而不是一个字符串''31''。 – AChampion
将来请发布完整的堆栈跟踪,以便人们不必猜测哪条线路导致错误。 – glibdud
这是修复它,谢谢! – simons21