Size: a a a

Python — вакансии и аналитика

2020 September 23

I

Ivan (antisleep) in Python — вакансии и аналитика
Влад Никандров

ls = [{'tiker': 'CHMF', 'value': '-1', 'price': '972.00000'},
{'tiker': 'CHMF', 'value': '-33', 'price': '972.00000'},
{'tiker': 'AFLT', 'value': '960', 'price': '78.20000'},
{'tiker': 'AFLT', 'value': '-5440', 'price': '78.20000'}]
res = [{'tiker': i, 'summ': sum([int(j['value']) for j in filter(lambda x: x['tiker'] == i, ls)])} for i in {k['tiker'] for k in ls}]
print(res)


только это не группа помощи, а группа вакух
зануда mode ON
Медлена и плохо читабельно)
зануда mode OFF
источник

С

Серёжа in Python — вакансии и аналитика
Ivan (antisleep)
зануда mode ON
Медлена и плохо читабельно)
зануда mode OFF
согласен, дичь получилась
источник

ВН

Влад Никандров... in Python — вакансии и аналитика
Ivan (antisleep)
зануда mode ON
Медлена и плохо читабельно)
зануда mode OFF
там юзаются генераторы и встроенные функции быстрее только на нампае
источник

oy

obscured yarbrough in Python — вакансии и аналитика
Вадим Смирнов
Там я встретил любовь, помимо прочего.
рад за Вас
источник

ВН

Влад Никандров... in Python — вакансии и аналитика
Серёжа
согласен, дичь получилась
к типовой задаче обязательно написать пару классов пару импортов))))
источник

I

Ivan (antisleep) in Python — вакансии и аналитика
Влад Никандров
там юзаются генераторы и встроенные функции быстрее только на нампае
Медленно в плане time complexity
У тебя сейчас грубо говоря O(N*M)
Где N - кол-во уникальных тикеров
А M - кол-во элементов в списке ls

Ты сначала создаешь множество из tiker
А потом ДЛЯ КАЖДОГО элемента из множества tiker фильтруешь список ls
источник

С

Серёжа in Python — вакансии и аналитика
Влад Никандров
к типовой задаче обязательно написать пару классов пару импортов))))
да нифига. можно, например, defaultdict использовать
источник

I

Ivan (antisleep) in Python — вакансии и аналитика
Серёжа
да нифига. можно, например, defaultdict использовать
+1
источник

ВС

Вадим Смирнов... in Python — вакансии и аналитика
Michael V
операционистки?
да
источник

ВС

Вадим Смирнов... in Python — вакансии и аналитика
Платили трицон. 2\2, +три часа на дорогу. Но мне нравился процесс.
источник

I

Ivan (antisleep) in Python — вакансии и аналитика
from collections import defaultdict
tiker_to_value = defaultdict(int)
for instance in ls:
    tiker_to_value[instance['tiker']] += int(instance['value'])

result = []
for t, v in tiker_to_value.items():
    result.append({'tiker': t, 'summ': v})
print(result) # [{'tiker': 'CHMF', 'summ': -34}, {'tiker': 'AFLT', 'summ': -4480}]
Грубо говоря что-то такое
источник

ВС

Вадим Смирнов... in Python — вакансии и аналитика
Спросили - хочу ли работать и сразу дали работу без лишних вопросов.
источник

ВС

Вадим Смирнов... in Python — вакансии и аналитика
Но вот на питон вакансии вообще не берут.
источник

oy

obscured yarbrough in Python — вакансии и аналитика
Вадим Смирнов
Но вот на питон вакансии вообще не берут.
что говорят? чего не хватает?
источник

ВН

Влад Никандров... in Python — вакансии и аналитика
Ivan (antisleep)
from collections import defaultdict
tiker_to_value = defaultdict(int)
for instance in ls:
    tiker_to_value[instance['tiker']] += int(instance['value'])

result = []
for t, v in tiker_to_value.items():
    result.append({'tiker': t, 'summ': v})
print(result) # [{'tiker': 'CHMF', 'summ': -34}, {'tiker': 'AFLT', 'summ': -4480}]
Грубо говоря что-то такое
ls = [{'tiker': 'CHMF', 'value': '-1', 'price': '972.00000'},
{'tiker': 'CHMF', 'value': '-33', 'price': '972.00000'},
{'tiker': 'AFLT', 'value': '960', 'price': '78.20000'},
{'tiker': 'AFLT', 'value': '-5440', 'price': '78.20000'}]
res = []
lss = []
for _ in range(len(ls)):
   data = ls.pop()
   if data['tiker'] not in lss:
       res.append({'tiker': data['tiker'], 'summ': int(data['value'])})
       lss.append(data['tiker'])
   else:
       res[lss.index(data['tiker'])]['summ'] += int(data['value'])
print(res)
источник

🌼S

🌼 Eugene Sobolev in Python — вакансии и аналитика
Ладно, короче ясно что нужно дефолтдикт юзать
источник

ВН

Влад Никандров... in Python — вакансии и аналитика
Ivan (antisleep)
from collections import defaultdict
tiker_to_value = defaultdict(int)
for instance in ls:
    tiker_to_value[instance['tiker']] += int(instance['value'])

result = []
for t, v in tiker_to_value.items():
    result.append({'tiker': t, 'summ': v})
print(result) # [{'tiker': 'CHMF', 'summ': -34}, {'tiker': 'AFLT', 'summ': -4480}]
Грубо говоря что-то такое
без импортов
источник

I

Ivan (antisleep) in Python — вакансии и аналитика
Влад Никандров
без импортов
А что, импорты это какая-то проблема?
источник

I

Ivan (antisleep) in Python — вакансии и аналитика
Влад Никандров
без импортов
И  у тебя всё так же ботлнэк с двумя цыклами, грубо говоря
источник

🌼S

🌼 Eugene Sobolev in Python — вакансии и аналитика
Влад Никандров
ls = [{'tiker': 'CHMF', 'value': '-1', 'price': '972.00000'},
{'tiker': 'CHMF', 'value': '-33', 'price': '972.00000'},
{'tiker': 'AFLT', 'value': '960', 'price': '78.20000'},
{'tiker': 'AFLT', 'value': '-5440', 'price': '78.20000'}]
res = []
lss = []
for _ in range(len(ls)):
   data = ls.pop()
   if data['tiker'] not in lss:
       res.append({'tiker': data['tiker'], 'summ': int(data['value'])})
       lss.append(data['tiker'])
   else:
       res[lss.index(data['tiker'])]['summ'] += int(data['value'])
print(res)
Влад, ну это жесть)
источник