Bedingung mit Anweisung in Python

Gibt es eine Möglichkeit, einen Codeblock mit einer with-Anweisung zu beginnen, aber unter bestimmten Bedingungen?

Etwas wie

if needs_with():
    with get_stuff() as gs:

# do nearly the same large block of stuff,
# involving gs or not, depending on needs_with()

Zur Verdeutlichung würde in einem Szenario ein Block in der with-Anweisung eingeschlossen sein, während eine andere Möglichkeit derselbe Block wäre, der jedoch nicht eingeschlossen ist (d. H. Als ob er nicht eingerückt wäre).

nfängliche Experimente geben natürlich Einrückungsfehle