Задать вопрос
@artmirarmi

Перевод кода с python на php?

Прошу помощи в переводе данного кода с python в php:

sum_of_squares=sum([pow(prefs[person1][item]-prefs[person2][item],2)
for item in prefs[person1] if item in prefs[person2]])


Не совсем понятно, как он работает
  • Вопрос задан
  • 463 просмотра
Подписаться 2 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 1
aRegius
@aRegius
Python Enthusiast
Не совсем понятно, как он работает

# Исходный словарь
>>> prefs = {'person1': {'item1': 5, 'item3': 10},
	           'person2': {'item1': 3, 'item2': 6}}
# Обращение к значению ключа вложенного словаря
>>> prefs['person1']['item1']
5
# Разница значений ключей
>>> prefs['person1']['item1'] - prefs['person2']['item1']
2
# Функция pow() возведения числа в степень 
>>> pow(5, 2)
25
>>> pow(5, 2) == 5 ** 2
True
# Перебираем ключи словаря
>>> [key for key in prefs['person1']]
['item1', 'item3']
>>> [key for key in prefs['person2']]
['item1', 'item2']
# Находим общие для словарей prefs['person1'] и prefs['person2'] ключи
>>> [key for key in prefs['person1'] if key in prefs['person2']]
['item1']
# Функция sum() нахождения суммы
>>> x = list(range(5))
>>> x
[0, 1, 2, 3, 4]
>>> sum(x)
10


PS На PHP не переведу, вне моей компетенции )
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы