Python » Страница 789

-

Программирование на Python



nur87


репутация: 60
на сайте с 2006 года
сообщений: 559

Explay Golf

Казань

Возраст - 39

7881

не то?

def pr(a,b):
global aa, bb
if a==3:
return
print 'new param - ',a, b
print 'old param - ',aa, bb
aa=a
bb=b
pr(a+1,b+1)


aa=0
bb=0
pr(1,1)

Namingway


репутация:
на сайте с 1970 года
сообщений:

7882

не, не совсем то. впрочем, до меня наконец дошло, что можно было в переменную для хранения начального аргумента сначала записать null и обновлять(перезаписывать) её только если она ==null smile
UPD. т.е. не null, а None, сказывается то что я давно ничего не писал на питоне)

dimy44


репутация: 537
на сайте с 2006 года
сообщений: 2540

HTC One S

Евпатория

Возраст - 55

7883

Проверку на None не нужно делать оператором сравнения, лучше if value is None: ...

nur87


репутация: 60
на сайте с 2006 года
сообщений: 559

Explay Golf

Казань

Возраст - 39

7884

а почему?

dimy44


репутация: 537
на сайте с 2006 года
сообщений: 2540

HTC One S

Евпатория

Возраст - 55

7885

По правилам хорошего стиля). Да и формально операция сравнения затратнее.

nur87


репутация: 60
на сайте с 2006 года
сообщений: 559

Explay Golf

Казань

Возраст - 39

7886

а что из этого лучше юзать ?
1. if a!=None
2. if a is not None
3. if a

есть ли короткая форма записи, типа if a:, для условия if a is not None

dimy44


репутация: 537
на сайте с 2006 года
сообщений: 2540

HTC One S

Евпатория

Возраст - 55

7887

третий вариант по обстановке, ибо он также не выполнится при a == 0 например, а например appuifw.query(u"?", "text") кроме None ложь не возвратит, но для лучшей читаемости думаю, все равно лучше явно, второй лучше всего, да и Гвидо именно так рекомендует.

-Belerafon-


репутация: 1318
на сайте с 2005 года
сообщений: 1898

Huawei Honor 10i

Россия

Возраст - 42

7888

а если if a or a==0

dimy44


репутация: 537
на сайте с 2006 года
сообщений: 2540

HTC One S

Евпатория

Возраст - 55

7889

Питон богат и могуч). Скажем, if isinstance(a, (int, float, long):... сразу отсеет некорректное значение.

nur87


репутация: 60
на сайте с 2006 года
сообщений: 559

Explay Golf

Казань

Возраст - 39

7890

нет ли у кого модуля для работы с буфером обмена на второй питон?

или может кто знает структура файла Clpboard.cbd
-------------
добавлено в 14.03: у меня на 145 питоне не работает clipboard.Set(u'руский текст')
он применяется, но потом из буфера не прочитать его
н82

у кого как себя ведет этот моуль?