我该如何制作一个特殊的单例,比如None
?(我是python新手。)
我想做这种事:
def create_mutations(d):
return [
Mutation(c, v)
if v is not CellAction.Delete else
Mutation(c, isDelete=True)
for (c, v) in d
]
这样使用:
^{pr2}$这将创建一个包含三个突变的列表,意思是“将a
设置为5
,将b
设置为None
,并删除c
。”
关键是在create_mutations
的定义中,我不能使用... if v is not None else ...
,因为这样就没有了“将b
设置为None
”和“删除b
”之间的区别
如果问题不清楚,我可以澄清。在
您只需在模块或类中的某处实例化一个
object
,如下所示:这对大多数情况来说已经足够了。在
好吧,简单的答案是你不能(嗯,你可以,但这不是你想做的)。在
您可能应该在这里使用一个类,例如
DeleteCell = object()
(或者,您可以有一个CellAction
类或模块,其中包含各种操作(其他类)。在简单地制作一些对象并给它一个名字。空类可以:
或者,正如Michael所说,一个
object
实例。在如果您计划使用
is
测试它,那么您使用的任何对象都应该是可变的;Python有共享不可变对象实例的习惯。(例如,所有空元组都是同一个对象。)相关问题 更多 >
编程相关推荐