I was debugging some code that had some never-ending loop issues, and I sometimes couldn't figure out how to make informative print statements to help identify which loop was broken.
An example case is:
def fake_function():
    print 'I am about to enter a broken loop.'
    while True:
    #  Doesn't matter what I'm doing here.
        _ = None
When I then call fake_function, I don't get any output until I halt it.
A slightly larger example that might show why I wanted this looks like:
def another_fake_function():
    #  This loop is fine and not broken.  
    print 'I am entering a loop that might be broken.'    
    leave_loop = False
    while not leave_loop:
        #  Do a thing.
        leave_loop = True
    #  This loop actually is broken.
    print 'I am about to enter a different loop that might be broken.'
    while True:
        #  Doesn't matter what I'm doing here.
        _ = None
So, is there any way to really force python to print something immediately?
Thanks!
