The recent abundance of high-throughput data for biological circuits enables data-driven quantitative modeling and parameter estimation. Common modeling issues include long computational times during parameter estimation, and the need for many iterations of this cycle to match data. Here, we present BioSCRAPE (Bio-circuit Stochastic Single-cell Reaction Analysis and Parameter Estimation) - a Python package for fast and flexible modeling and simulation for biological circuits. The BioSCRAPE package can be used for deterministic or stochastic simulations and can incorporate delayed reactions, cell growth, and cell division. Simulation run times obtained with the package are comparable to those obtained using C code - this is particularly advantageous for computationally expensive applications such as Bayesian inference or simulation of cell lineages. We first show the package's simulation capabilities on a variety of example simulations of stochastic gene expression. We then further demonstrate the package by using it to do parameter inference for a model of integrase dynamics using experimental data. The BioSCRAPE package is publicly available online along with more detailed documentation and examples.