if option == 4:
day5 = int(input('Enter a day:'))
month5 = int(input('Enter a month:'))
year5 = int(input('Enter a year:'))
dateSelected = str(year5+'-'+month+'-'+day5)
if day == day5 and month == month5 and year == year5:
print(occurence, ' appointment starting on (', dateSelected, '): ', time, ', ', event)
我收到的错误是“dateSelected = str(year5 +' - '+ month +' - '+ day5)”。我不知道如何解决这个问题。我已经找了类似的问题并试了一下,但没有用。
答案 0 :(得分:0)
看起来你将月份设置为月份5然后尝试通过调用month而不是month5来恢复它。
变化
dateSelected = str(year5+'-'+month+'-'+day5)
到
dateSelected = str(year5+'-'+month5+'-'+day5)
答案 1 :(得分:0)
至少 year5
和day5
是int
。 '-'
是字符串。所以,你正在添加/连接一个字符串到一个int,这是没有意义的。
Python 可以隐含地使类型同时为int
或string
。但是因为两者都有意义(只是关于类型)定义了添加和连接(显然不是同时)。所以Python没有......没有,它不知道你是否想要一个或另一个。
您可能认为获取更多信息(因此它可以检测它是否为数字字符串,如果是,则字符串将被隐式转换为int,如果不是int将被转换)是好的,但它实际上是一个坏主意,并使操作员变慢(当你经常使用时,你应该能够注意到它)。
将该行替换为:
dateSelected = str(year5)+'-'+str(month)+'-'+str(day5)