python - 如何在一个类中定义一个方法来创建同一个类的对象?
问题描述
我有一个问题。我应该定义一个方法来在我的类中创建一个新对象。我的代码如下:
class Email:
def __init__(self, has_been_read, email_contents, is_spam, from_address):
# Asserting has_been_read & is_spam variables as booleans
assert type(has_been_read) == bool and type(is_spam) == bool
self.has_been_read = has_been_read
self.email_contents = email_contents
self.is_spam = is_spam
self.from_address = from_address
# Predefining booleans as False
is_spam = False
has_been_read = False
def mark_as_read(self):
# Creating method to change has_been_read boolean to True
return self.has_been_read == True
def mark_as_spam(self):
# Creating method to change is_spam to True
return self.is_spam == True
inbox = []
def add_email(self):
所以我需要做的是创建一个名为的方法add_email
,它将接受email_contents
并from_address
创建一个新Email
对象,但由于某种原因,我不知道如何定义一个创建对象的方法?任何帮助将不胜感激!
解决方案
你可以使用 return 做你想做的事。检查以下代码:
def add_email(self, email_contents, from_address):
return Email(False, email_contents, False, from_address)
推荐阅读
- vue.js - Bootstrap Vue Modal 的零星问题
- java - 实施 'com.google.android.gms:play-services-ads:18.1.0'
- python - 如何在 Python 中将列表拆分为两个唯一列表?
- ruby - 添加下拉菜单更改了导航栏上的链接顺序和其他格式
- python-sphinx - 检查从 sphinx 扩展生成的 ReST
- javascript - 有没有办法让javascript在svg世界地图上绘制纬度和经度线?
- node.js - Puppeteer 性能泄漏
- swift - 有没有一种特定的方法可以将 DispatchWorkItems 附加到 DispatchQueue 而不是在代码中重新声明它们?
- php - 为什么
- python - Creating an object that asks the user to enter a desired user id and stores this id