Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Python: Общие вопросы > Вопрос-ответ


Автор: Karadul 31.5.2012, 03:12
Не знаю, как модеры отнесутся к теме для коротких вопросов. Ну попробуем.

Почему не работает?
Код

o=object()
o.a=1

И как тогда сделать struct без лишнего обьявления пустого класса?

Автор: Stolzen 31.5.2012, 09:43
Код

class Record(): pass

a = Record()
a.a = 10


Да, тут нет лишнего объявления, зато сразу видно намерение использовать класс как запись 

Автор: Karadul 31.5.2012, 17:15
Цитата(Stolzen @  31.5.2012,  09:43 Найти цитируемый пост)
Да, тут нет лишнего объявления, 

А это что?

Код

class Record(): pass


Автор: Stolzen 31.5.2012, 17:36
Оговорился (отпечатался), есть.
Но вторая часть утверждения в силе

Автор: Karadul 31.5.2012, 18:54
Цитата(Karadul @  31.5.2012,  03:12 Найти цитируемый пост)
И как тогда сделать struct без лишнего обьявления пустого класса?


Автор: VinniPuhh 1.6.2012, 13:02
Код

    class o():pass
    o.a = 1


"Лишнее" объявление какбэ присутствует, но +/- это идеологически аналог того что ты написал в первом посте.
То есть получилось не Класс -> Объект класса -> Поле, а просто у самого класса поля.
Хз то ли это что тебе надо smile 
Просто как вариант на заметку.

Автор: Karadul 1.6.2012, 23:25
Не то, мне не нужен синлтон.

Автор: Karadul 16.6.2012, 12:22
Стоит ли ненужные переменые обозначать как _?

Код

_, x, _, y = lst


_ перезаписывается http://docs.python.org/library/gettext.html.

Автор: Avtandil 26.6.2012, 09:41
Цитата(Karadul @ 31.5.2012,  03:12)
Не знаю, как модеры отнесутся к теме для коротких вопросов. Ну попробуем.

Почему не работает?
Код

o=object()
o.a=1

И как тогда сделать struct без лишнего обьявления пустого класса?

Очень просто
Код

>>> o=lambda:_
>>> o.a="sdasd"
>>> o.a
'sdasd'

Автор: Burka 26.6.2012, 14:01
Вопрос

Код

for filename in glob.glob(target_files) :
    (shortname, extension) = os.path.splitext(filename)
    out_file = "%s.raw" % (shortname)


у меня имена файлов получаются вида "50. somefile.raw"

как убрать эту цирфу в начале?

Автор: Avtandil 26.6.2012, 14:11
Цитата(Burka @ 26.6.2012,  14:01)
Вопрос

Код

for filename in glob.glob(target_files) :
    (shortname, extension) = os.path.splitext(filename)
    out_file = "%s.raw" % (shortname)


у меня имена файлов получаются вида "50. somefile.raw"

как убрать эту цирфу в начале?

Видимо особенности винды.
Linux полет нормальный
Код

>>> for filename in glob.glob('*.html'):
    s,e=os.path.splitext(filename)
    print '%s.raw' % s

    
monitoring_reports2.raw
monitoring_reports.raw

Автор: Avtandil 27.6.2012, 06:23
Код

import abc, this

abc.a=5
this.a=6
b=abc
c=this
b.d=4
c.f=4435
print this.a, abc.a, b.d, c.f

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)