Pycharm Python console does not print output

I have a function that I call from the Pycharm python pool, but no output is displayed.

In[2]: def problem1_6():
  ...:     for i in range(1, 101, 2):
  ...:         print(i, end = ' ')
  ...: 
In[3]: problem1_6()

In[4]:

      

On the other hand, like this, it prints but in the wrong order

In[7]: def problem1_6():
  ...:     print('hello')
  ...: 
  ...:     for i in range(1, 101, 2):
  ...:         print(i, end = ' ')
  ...: 
In[8]: problem1_6()
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49 51 53 55 57 59 61 63 65 67 69 71 73 75 77 79 81 83 85 87 89 91 93 95 97 99 hello

      

As a third option, as @DavidS suggestion,

In[18]: import sys
   ...: 
   ...: def problem1_6():
   ...:     for i in range(1, 101, 2):
   ...:         sys.stdout.write(str(i) + ' ')
   ...: 
In[19]: problem1_6()

In[20]:

      

It still doesn't print.

+3


source to share


1 answer


This will work:

def problem1_6():
    for i in range(1, 101, 2):
        sys.stdout.write(str(i) + ' ')
        sys.stdout.flush()

      



or

def problem1_6():
    for i in range(1, 101, 2):
        print(i, end=' ', flush=True)

      

+3


source







All Articles