I have a pygame program where there's a face in the center. What I want the program to do is have a bunch of objects on the screen, all irregular. Some would be circles, others would be cut-out pictures of objects like surf boards, chairs, bananas, etc. The user would be able to drag the objects around, and they'd collide with each other and the face in the center, and so be unable to pass through them. Could anyone show me how I would do this? Thanks!
-EDIT- And by not be able to pass through, I mean they'd move along the edge of the object, trying to follow the mouse.
What you are looking for is functionality usually provided by a so-called physics engine.  For very basic shapes, it is simple enough to code the basic functionality yourself.  (The simplest case for 2D shapes is the collision detection between circles). 
Collision detection gets pretty hard pretty quickly, especially if you want to do it at a reasonably fast rate (such as you would need for the sort of project you are describing) and also especially if you are dealing with arbitrary, non-regular shapes (which your description seems to indicate).  So, unless you are interested in learning how to code an optimized collision detection system, I suggest you google for python physics engines.  I have never used any, so I can't personally recommend one.  
Good luck!
Pygame image collision