return object.__getattribute__(self, name)
Точна симулация на оператор точка ли е или търси само в собствените атрибути (без да гледа наследените) ?
Програмиране с Python » Форуми » Задачи
Връщани стойности
(49 posts)-
Posted 6 years ago #
-
nb а защо е тази рестрикция към object? :)
Posted 6 years ago # -
За да не бърникаме където може да ни хване ток :-)
Posted 6 years ago # -
ето една интересна ситуация
class d(object):pass class c(object): pass class b(d): pass class a(b,c): pass c._x = 42 d._x = 69 r = Resolver(a,BFS) Resolver._x=99 print r._x
какво трябва да изпечата х?? 99 или 42?
дали озобщо ще се срещне?Posted 6 years ago # -
Забравете за долните черти! Такива тестове няма да има.
Posted 6 years ago # -
преформулирам въпроса
ето такава ситуация:
class d(object):pass class c(object): pass class b(d): pass class a(b,c): pass c.x = 42 d.x = 69 r = ValueResolver(a,BFS) ValueResolver.x=99 print r.x
99 или 42??
Posted 6 years ago # -
Трябва да върне 42.
Posted 6 years ago # -
такъв тест ще има ли??
Posted 6 years ago # -
Няма причина да няма такива тестове.
Надявам се, че това е добра причина да опита
Posted 6 years ago # -
uZer, nb,
по интересния въпрос ще е: какво ще върнеa.x
и далиa.x == r.x
, в този случай.
Аз постнах един коментар по-рано по тази тема, който разглежда този проблем, но явно nb не го е видял. Е вярно, коментара ми беPosted 6 years ago # -
Ако
r
еResolver
на класаA
иA
иr
имат един и същи атрибут, незапочващ с долна черта, то трябва да се върне атрибута наA
.Posted 6 years ago # -
Ама не го пробва, нали:)
Това което казваPosted 6 years ago # -
Posted 6 years ago #
-
Ей за това говоря и аз:)
Така де, да си призная - не го знаех!
Благодарности за линка:)Posted 6 years ago # -
plamKaTa,
Пробвах го. Моята реализация връща атрибута наA
, както си пиPosted 6 years ago # -
Posted 6 years ago #
-
Да, извинявам се, малко като кон с капаци действах. Наистина май през цялото време си мислех, че знам какво има
Posted 6 years ago # -
това проблем ли е?
...
----------------------------------------------------------------------
Ran 3 tests in 0.020sOK
Traceback (most recent call last):
File "D:\Documents and Settings\admin\Desktop\UnitTest2.py", line 37, in <module>
unittest.main()
File "D:\Python25\lib\unittest.py", line 759, in __init__
self.runTests()
File "D:\Python25\lib\unittest.py", line 797, in runTests
sys.exit(not result.wasSuccessful())
SystemExit: FalsePosted 6 years ago # -
Не, не е проблем.
П.П. Не задавай въпроси в съществуваща тема, ако нямат нищо общо с нея.
П.П.П. Преди да питаPosted 6 years ago #
Reply
You must log in to post.