这可能是非常明显的事情,但我似乎无法弄清楚。
此片段来自 Django 基于文件的电子邮件后端 (django.core.mail.backends.filebased.py)
def write_message(self, message): self.stream.write(message.message().as_bytes() + b"\n")
我的问题是。我怎样才能找出什么类是消息的对象?
原因的上下文: 我的代码沿各种执行路径发送电子邮件。我想利用 Django 的基于文件的后端,而不是在调试和单元测试(或创建我自己的基于文件的系统)期间发送实时电子邮件。相关代码目前有一个 MIMEMultipart 对象(带有 utf-8 编码文本),适用于生产。我需要能够将其转换为可以通过上述代码段清晰打印的对象。
PS:我来自 C++ 背景,这是一个很容易回答的问题。
你可以使用python的内置类型函数
type(obj)
或者如果您想检查它是否是特定对象的实例,请使用 isinstance 函数
if isinstance(obj, Obj_Class): # do something