Hateman31
@Hateman31
Делиться мыслями - это круто!

Как уменьшить функцию?

def foo(self, **kwargs):
		bar = kwargs
		bar['_id'] = self.app_id
		return pass

Можно ли здесь вообще избавиться от переменной bar и написать так:
def foo(self, **kwargs): 
kwargs['_id'] = self.app_id
return pass
  • Вопрос задан
  • 448 просмотров
Решения вопроса 2
bobrovskyserg
@bobrovskyserg
WTF return pass?

А так-то - почему нет?
def f(**kwargs):
    print(kwargs)
    kwargs['a'] = 2
    kwargs['b'] = 3
    print(kwargs)

f(a=1)
Ответ написан
adugin
@adugin Куратор тега Python
Не очень ясна цель этой манипуляции.

Если ID - immutable, вы ведь понимаете, что снаружи функции ничего не изменится?
>>> def foo(**kwargs):
	kwargs['id'] = 1
	print 'Internal: %s' % kwargs['id']

>>> d = {'id': 0}
>>> foo(**d)
Internal: 1
>>> d
{'id': 0}

И пример изменения снаружи:
>>> def foo(**kwargs):
	kwargs['id'][:] = [4, 5, 6]
	print 'Internal: %s' % kwargs['id']
	
>>> d = {'id': [1, 2, 3]}
>>> foo(**d)
Internal: [4, 5, 6]
>>> d
{'id': [4, 5, 6]}
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
angry_cellophane
@angry_cellophane
Берешь zip, tar, лупу, микроскоп, что-то еще и уменьшаешь. Сжимай её полностью.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы