Tkinter automatically adds a newline at the end of the data in the widget. To see if the widget is empty, compare the index right before this newline with the starting index; if they are the same, the widget is empty.
You can use the index "end-1c" (or "end - 1 char") to represent the index of the character immediately before the trailing newline. You can use the text widget's compare method to do the comparison.
if text.compare("end-1c", "==", "1.0"):
print("the widget is empty")
Assuming you don't have hundreds of megabytes in your widget, you can also get the contents and compare the length to zero. This makes a temporary copy of the data in the widget, which in most cases should be fairly harmless. Again, you don't want to get the trailing newline:
if len(text.get("1.0", "end-1c")) == 0:
print("the widget is empty")
getmethod?