2014-10-30 5 views
0

Я пишу небольшое приложение для отслеживания статистики, связанной с работой для себя. У меня есть классНазначьте одно значение нескольким переменным

class Shift(): 

def __init__(self): 
    self.hours = None 
    self.coworker = None 
    ... Etc 

То, что я хочу сделать, это назначить все эти значения, как None при создании объекта сдвига. Легко делается по одному, но мне было интересно, есть ли способ назначить None нескольким переменным сразу.

+2

Что вы сейчас делаете, это нормально. Легко читать и понимать, и вы никогда не должны жертвовать этим за меньшее количество строк. –

+0

Просьба уточнить (для вас самих), нужно ли то, что вы пытаетесь сделать, - это присвоить одно значение нескольким переменным или DEFINE несколько переменных, которые инициализируются с тем же значением. Различие важно - поскольку вы используете переменные NAMED, и они должны быть ОСОБЕННО определены. Если бы они уже существовали, для присвоения им значений можно использовать различные виды решений. – immortal

+0

Возможно, я ошибаюсь. Я хочу установить атрибуты объекта shift на none. Затем в разных точках программы устанавливаются различные атрибуты с их соответствующими значениями. Прежде чем хранить объекты, я хочу, чтобы проверить, что все атрибуты были установлены на соответствующие значения. – Oliver

ответ

0
self.hours = self.coworker = None 

Или эквивалент для любых переменных, которые у вас есть.

+0

Важно добавить здесь, что это работает только потому, что 'None' является одноэлементным. Если бы вы попытались использовать его для составного типа, вы бы получили несколько переменных, указывающих на один и тот же объект здесь, что могло привести к неожиданному поведению. – immortal

+0

Также стоит добавить, что это беспорядок для чтения, даже с двумя переменными, на первый взгляд неясно, каково намерение. –

+0

@Puciek Это для тех, кто приходит с C/C++ и т. П. :) Но я согласен, что это не очень Pythonic ... – immortal

Смежные вопросы