title: The Jupyter Notebook cell keeps being run (never stops)
body: <p>In my coursework, I have to create the following picture (with one piece with no effect on it)</p>
  <p><a href="https://i.stack.imgur.com/shAvu.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/shAvu.png" alt="enter image description here" /></a></p>
  <p>Below is what I have tried so far:</p>
  <pre><code>import PIL
  from PIL import Image
  from PIL import ImageEnhance
  from PIL import ImageDraw
  from PIL import ImageFont
  
  fnt = ImageFont.truetype('readonly/fanwood-webfont.ttf', 75)
  # read image and convert to RGB
  image=Image.open(&quot;readonly/msi_recruitment.gif&quot;).convert('RGB')
  drawing_object = ImageDraw.Draw(image)
  
  # build a list of 9 images which have different brightnesses
  enhancer=ImageEnhance.Brightness(image)
  images=[]
  x = 0
  for i in range(0, 10):
      x += 1
      z = x 
      if x % 3 == 0 :
          z = 9
          drawing_object.rectangle((0,450,800,325), fill='black')
          drawing_object.text((20,350),'channel intensity 0.{}'.format(z), font=fnt, fill=(255,255,255))
  
      elif x % 3 == 1: 
          z = 1
          drawing_object.rectangle((0,450,800,325), fill='black')
          drawing_object.text((20,350),'channel intensity 0.{}'.format(z), font=fnt, fill=(255,255,255))
  
      else:
          z = 5
          drawing_object.rectangle((0,450,800,325), fill='black')
          drawing_object.text((20,350),'channel intensity 0.{}'.format(z), font=fnt, fill=(255,255,255))
      images.append(enhancer.enhance(10/10))
  
  ## create a contact sheet from different brightnesses
  first_image=images[0]
  contact_sheet=PIL.Image.new(first_image.mode, (first_image.width*3,first_image.height*3))
  x=0
  y=0
  
  for img in images:
      # Lets paste the current image into the contact sheet
      
      contact_sheet.paste(img, (x, y) )
      
      #--&gt;&gt; I think the problem starts HERE &lt;&lt;--
      pixels = img.load()
      w = image.width
      h = image.height
  
      for x in range(3 * w):
          for y in range(3 * h):
  
              #-------0th row---------
  
              if x in range(0, w) and y in range(0, h): # grid[0,0]
                  for i in range(w):
                      for j in range(h):
                          pixels[i, j] = (0,0,90)
  
              elif x in range(w, 2 * w) and y in range(0, h): # grid[0,1]
                  for i in range(w):
                      for j in range(h):
                          pixels[i, j] = (0,0,50)
  
              elif x in range(2 * w, 3 * w) and y in range(0, h): # grid[0,2]
                  for i in range(w):
                      for j in range(h):
                          pixels[i, j] = (0,0,10)
  
              #--------1st row---------
  
  
              elif x in range(0, w) and y in range(h, 2 * h): # grid[1,0]
                  for i in range(w):
                      for j in range(h):
                          pixels[i, j] = (90,0,0)
  
              elif x in range(w, 2 * w) and y in range(h, 2 * h): # grid[1,1]
                  for i in range(w):
                      for j in range(h):
                          pixels[i, j] = (50,0,90)
  
              elif x in range(2 * w, 3 * w) and y in range(h, 2 * h): # grid[1,2]
                  for i in range(w):
                      for j in range(h):
                          pixels[i, j] = (10,0,0)
  
              #--------2nd row----------
  
              elif x in range(0, w) and y in range(2 * h, 3 * h): # grid[2,0]
                  for i in range(w):
                      for j in range(h):
                          pixels[i, j] = (0,90,0)
  
              elif x in range(w, 2 * w) and y in range(2 * h, 3 * h): # grid[2,1]
                  for i in range(w):
                      for j in range(h):
                          pixels[i, j] = (0,50,0)
  
              elif x in range(2 * w, 3 * w) and y in range(2 * h, 3 * h): # grid[2,2]
                  for i in range(w):
                      for j in range(h):        
                          pixels[i, j] = (0,10,0)
      
      # Now we update our X position. If it is going to be the width of the image, then we set it to 0
      # and update Y as well to point to the next &quot;line&quot; of the contact sheet.
      if x+first_image.width == contact_sheet.width:
          x=0
          y=y+first_image.height
      else:
          x=x+first_image.width
  
  
  
  # resize and display the contact sheet
  contact_sheet = contact_sheet.resize((int(contact_sheet.width/2),int(contact_sheet.height/2) ))
  
  
          
  display(contact_sheet)
  </code></pre>
  <p>Here the <code>image</code> is the piece I am given. When I run this the Jupyter Notebook cell keeps being run <code>[*]</code>. Well, before I added the part of the code with <code>pixels</code> (after <code>#--&gt;&gt; I think the problem starts HERE &lt;&lt;--</code>) I had this grid exactly in the same view but without color effects. But now, I probably made some mistakes.</p>