这里是一个示例类:
from datetime import datetime
class Article:
published = datetime.now()
for propname in "year month day hour minute second".split():
exec "%s = property(lambda self: self.published.%s)"%(propname, propname)
del propname
从您所看到的内容可以发现,我正在使用exec
来优化创建多个property()
对象的过程。我经常读到说使用exec
是不好的,并且它会成为程序中的安全漏洞。那么在这种情况下,是吗?
eval()
和exec()
。 - Li-aung Yip