Yes, generally you can simulate network in Python. But it is better to have a dedicated framework for this task. Unfortunately, I don't think that there is any popular and recognized framework dedicated purely to network simulation. However, there are some general discrete event simulation libraries like SimPy or the mentioned Python overlays to popular ns3. Both approaches have certain disadvantages.
In SimPy you have to write a lot more code than applying a dedicated framework for network simulation. When it comes to ns3, Python bindings are a work in progress, and have some limitations, e.g. not 100% of the ns3 API is supported in Python. Also, as the core of ns3 is written in C++, probably Python may be not enough when doing more complicated simulations.