Как PHP-шинк со стажем, при изучении Python я использовал такой способ: брал готовые PHP-скрипты и переписывал их на Пайтон. В результате получилась небольшая шпаргалка, которой я и хочу поделиться с вами.
Сравнение массивов PHP и Python
Массивы в PHP = Списки в Python
$arr = ['Нулевой элемент', 'Первый'];
$arr[] = 'Второй';
$arr[] = 3;
arr = ['Нулевой элемент', 'Первый']
arr.append('второй')
arr.append(3)
print(arr)
# выводит: ['Нулевой элемент', 'Первый', 'второй', 3]
Ассоциативные массивы в PHP = Словари в Python
$arr = array(
'el1' => 'Первый',
'el2' => 'Второй'
);
$arr['el3'] = 3;
Как в PHP:
arr = {
'el1': 'Первый',
'el2': 'Второй'
}
arr['el3'] = 3
print(arr)
# выводит: {'el1': 'Первый', 'el2': 'Второй', 'el3': 3}
Аналоги json_decode и json_encode в Python
Одна из распространённых задач - кодирование и декодирование json.
Как в PHP:
$json_str = '{"element":1,"b":2,"c":3}';
var_dump(json_decode($json_str));
var_dump(json_decode($json_str, true));
Вернёт:
object(stdClass)#1 (3) {
["element"] => int(1)
["b"] => int(2)
["c"] => int(3)
}
array(3) {
["element"] => int(1)
["b"] => int(2)
["c"] => int(3)
}
Как в Python:
json_str = '{"element":1,"b":2,"c":3}'
decoded_body = json.loads(json_str)
print(decoded_body)
Библиотека для парсинга в PHP:
phpQuery
Её аналог в Python:
BeautifulSoup