With laptops and tablets becoming more powerful and more ubiquitous in the classroom, traditional computer labs with rows of expensive desktop computers are slowly beginning to lose their relevance. An alternative approach for computer-assisted instruction is to use a browser-based virtual computer lab. The different approaches to providing a virtual computing environment for Python, and the associated challenges, will be discussed. Options for providing a multi-user environment include running a public IPython Notebook server, or using alternative free/commercial solutions that incorporate the notebook interface, such as JiffyLab, Sage Math Cloud, GraphTerm, and Wakari. A virtual computer lab implemented using the GraphTerm server will be described. The advantages of physical computer labs, such as face-to-face interaction, and the challenge of replicating them in a virtual environment will be discussed as well.