Используйте метод after
следующим образом:
def state_change():
'''your code here'''
if self.basepath and (self.variable.get() == 0 or self.variable.get() =='1) and (self.secondOpt.get() == '0 or self.secondOpt.get() == 1):
btn_save['state']='normal' #here I want to change the save button state
root.after(100, state_change) #if you want to keep changing the state of the button
root.after(100, state_change)
ИЛИ
используйте виджет Button
, чтобы исключительно изменить его (то, что вам не нужно)