Форум сайта python.su
1
Использую pyCharm community edition. Помог поправить код к стандартам PEP8.
Спасибо.
Офлайн
857
likin
argparse основана на optparse, то есть не является устаревшей
There are two other modules that fulfill the same task, namely getopt (an equivalent for getopt() from the C language) and the deprecated optparse.
Офлайн
# https://github.com/vlikin/sitemap_builder_test/blob/master/sitemap.py#L20 if len(args) == 0:
if not len(args):
# https://github.com/vlikin/sitemap_builder_test/blob/master/lib/page.py#L35 if None == parent:
if parent is not None:
Отредактировано kise97 (Июль 15, 2014 13:53:11)
Офлайн
568
kise97if not len(args):
if not args:
Отредактировано FishHook (Июль 15, 2014 15:08:03)
Офлайн
88
row_list = [] row = [id(self), level, self.url, id(parent)] row_list.append(row)
row_list = [[id(self), level, self.url, id(parent)]]
Офлайн
FishHookТакая запись будет неправильной в python 3
Офлайн
568
kise97
Это что с чего это вдруг?
Офлайн
FishHookУбей не помню где, но прочитал, что лучше использовать len() чем не использовать его.
Это что с чего это вдруг?
Офлайн
857
kise97
лучше использовать len() чем не использовать его
>>> class List(list): ... def __bool__(self): ... return len(self) > 0 and self[0] > 5 ... >>> lst = List(range(3)) >>> bool(lst), len(lst) (False, 3) >>> >>> lst[0] = 10 >>> bool(lst), len(lst) (True, 3) >>>
Офлайн
568
py.user.nextПроверку на None делают, когда объект может быть нулем, пустой строкой, пустым списком, т.д. и эту ситуацию нужно отделить от случая, когда состояние объекта еще не определено.
По той же причине используют проверку на None вместо простой логической проверки. Если объект теоретически может иметь другой тип, то теоретически в нём может быть переопределён __bool__.
def foo(*args):
Офлайн