Вот что я делаю, чтобы пропустить просто строку исходного кода. Это в общем и целом, как предлагается в документации, но было немного сложно понять, что именно нужно изменить. (В частности, я пытался разными способами сохранить исходную строку вне showwarnings
, но не смог заставить ее работать так, как я хотел.)
# Force warnings.warn() to omit the source code line in the message
formatwarning_orig = warnings.formatwarning
warnings.formatwarning = lambda message, category, filename, lineno, line=None: \
formatwarning_orig(message, category, filename, lineno, line='')
Простая передача line=None
заставит Python автоматически использовать filename
и lineno
, чтобы автоматически определить значение для line
, но вместо этого пропустив пустую строку,