如果您查看下面的代码,我将创建一个FileNode并将字符串(filename)传递给它。当文件名设置器被触发时,它应该填充其余的字段,但是它似乎不起作用。你知道吗
我目前正在尝试在'filename'setter中测试设置属性'extension',但它似乎没有改变属性,这是为什么?你知道吗
import os
import pprint
class FileNode(object):
def __init__(self, filename):
self.filename = filename
self.show = ""
self.episode = ""
self.sequence = ""
self.shot = ""
self.task = ""
self.version = ""
self.extension = ""
self.isValid = False
@property
def filename(self):
return self.filename
@property
def extension(self):
return self.extension
@filename.setter
def filename(self, value):
self._filename = value
fl, ex = os.path.splitext(value)
self._extension = "candles"
@extension.setter
def extension(self, value):
self._extension = value
a = FileNode("BTMAN_1005_001_007_model_cup_v001.max")
# print (vars(a))
pp = pprint.PrettyPrinter(depth=6)
pp.pprint(vars(a))
b = FileNode("BTMAN_1005_001_007_model_v001.max")
# print (vars(b))
pp = pprint.PrettyPrinter(depth=6)
pp.pprint(vars(b))
您的属性与属性具有相同的名称!你知道吗
尝试对属性使用以单个下划线开头的名称,如中所示
相关问题 更多 >
编程相关推荐