Я пытаюсь сделать это, когда значение не равно другому значению, тогда оно нарисует прямоугольник. Вот мой код.python - не равно операнду, не работает
import tkinter
def a():
c1 = 1
c2 = 2
root = tkinter.Tk()
canvas = tkinter.Canvas(root, width=800, height=600)
def b():
if c1 != c2:
print ("test")
canvas.create_rectangle(100, 100, 500, 500, fill='blue')
root.after(10, b)
root.after(10, b)
a()
Как вы можете видеть, в функции b
, если переменная c1
не равна c2
(или наоборот), то он должен print
«тест». Однако это не печать, и даже не выполняется код прямоугольника ничьей.
Однако, когда я размещаю еще один манекен print
, перед заявлением if
он распечатает это.
Поэтому я могу сказать, что мой неравный операнд не работает, может ли кто-нибудь увидеть, что не так с моим кодом?
Вы должны добавить 'root.mainloop()' до конца вашего '' а) метод (в противном случае он никогда не будет использовать приложение. Вы также забыли '.pack()' ваш виджет холста. – 2014-09-09 18:07:12
_ «Когда я помещаю другой оператор« print »перед оператором' if', он будет печатать это. »_ Вы уверены? Если я поставлю оператор печати между 'def b():' и 'if c1! = C2:', я вообще не вижу никакого вывода. Программа просто прекращается немедленно. – Kevin