1
所以我碰到了這個有趣的問題來了,同時審查代碼:斷言包裝函數
class Foo:
def __init__(self, foo_name):
self.foo_doo = getattr(foo_name, 'foo_lists', None)
def assert_foo(self, varname):
assert hasattr(self, 'foo_%s' % varname)
def foobar(self):
assert_foo('doo')
想知道包裹斷言你自己的定製版本更快/更好的解決方案,然後使用assert hasattr(...)
每次你需要確保屬性存在而不是無?
沒有什麼特別的原因你不能''unittest'有一些像'assertEqual'這樣的包裝器。這取決於什麼使你的代碼最具可讀性。 –
更快?快點打字,當然。顯然,執行速度較慢,因爲涉及到一個額外的函數調用。 – kindall
我同意@ThomasK,我沒有看到任何問題。至於速度,我認爲在大多數情況下(儘管@kindall指出了理論差異),這應該可以忽略不計,具體取決於您執行此代碼的頻率。 – ubik