Language basics
- Indentation vs. brackets, tabs/spaces
- Globals, it's hard to define them
- Python - everything is reference, copy.copy(), php - special syntax
- Iterators + generators
- No switch statement
- No ternary operator
Language advanced
- Del for all types, php has their own del operations for arrays
- Php - one array type, python - list, dict and tuple
- Method chaining, functional programming, lambda
- Serialization included (ascii/binary) + 3rd party addons
- Decorators, pre/post conditions, var type control
- Interactive introspection
- Gc, customizable
OOP
- Everything is object, everything has methods
- Private / public, static, classmethod, staticmethod
- Multiple inheritance
- Mataclasses
- Dynamic typed, strongly typed - python
- Dynamic typed, weakly typed - php
Error/exceptions
- Docstrings
- Stacktrace, structured exception handling
Strings/localization
- Inside - pure Unicode, included abilities with convert between codepages
Libraries
- > 200 standart libraries (threading, xml, tcp/udp, http, smtp/imap)
- Namespaces and libraries organization, namespaces are not classes
- Reload libraries in runtime
- Schizophrenic tableau of function names
Performance
- GIL, threads vs. process, prefork (any threads in PHP?)
- Psycho
- Cached byte code compilation, py -> pyo/pyc, load
- Extendable with c/c++/java, swig
Misc
- UI - all popular frameworks
- Localization + Unicode
App specific
- Language vs. response time vs. db time bottleneck
- System/processor load - django vs. symphony
- lighttpd/apache/nginx
- fcgi/mod_python, mod_proxy_balancer
- ab, http_load, siege
- http://shootout.alioth.debian.org/gp4/benchmark.php?test=all&lang=php&lang2=python
- http://www.alrond.com/ru/2007/jan/25/rezultaty-testirovanija-6-frameworks/