As @unutbu and @Martin Valgur comment, I think slim is the way to go. This question may be somewhat redundant with an earlier one, but here is a clean piece of code that should do what you need.
, (), . , "" , - .
import shapely.geometry as sg
import shapely.ops as so
import matplotlib.pyplot as plt
r1 = sg.Polygon([(0,0),(0,1),(1,1),(1,0),(0,0)])
r2 = sg.box(0.5,0.5,1.5,1.5)
new_shape = so.cascaded_union([r1,r2])
xs, ys = new_shape.exterior.xy
fig, axs = plt.subplots()
axs.fill(xs, ys, alpha=0.5, fc='r', ec='none')
plt.show()
