title: Print function prints twice a field from a class
body: <p>I am using the <code>print</code> function to print a field from a class from another python module and it prints the field twice.  </p>
  
  <p>I have two modules:  </p>
  
  <p><strong>main.py:</strong>  </p>
  
  <pre><code>from statics import RiskyCars
  
  class Car:
      def __init__(self, name):
          self.name = name
  
  # init
  RiskyCars()
  print(RiskyCars.risky_cars[0].name)
  </code></pre>
  
  <p><strong>statics.py:</strong>  </p>
  
  <pre><code>class RiskyCars:
  
      @staticmethod
      def __init__():
          from main import Car
          RiskyCars.risky_cars = []
          RiskyCars.risky_cars.append(Car("car1"))
  </code></pre>
  
  <p>When I run <code>main.py</code> it print twice:  </p>
  
  <pre><code>C:\Python27\python.exe C:/Users/myuser/PycharmProjects/Project1/main.py
  car1
  car1
  </code></pre>
  
  <p>But if I put breakpoint before the <code>print</code> function:</p>
  
  <pre><code># main.py
  # init
  RiskyCars()     &lt;--- break point
  </code></pre>
  
  <p>and then run manually from the terminal:  </p>
  
  <pre><code>print(RiskyCars.risky_cars[0].name)
  </code></pre>
  
  <p>it prints only one time.  </p>
  
  <p>Why it happens ?  </p>