fix mistake usage of self param in recursive func and [] as default param
PEP8 changes

A few small adjustments.
This code is more elegant
change abstract_factory
remove some meanless line
edit the publish_subscribe.py
Merge branch 'nick-jiang-master'
Merge branch 'master' of https://github.com/osscca/python-patterns
Merge branch 'luoxing91-master'
removed iterator from the index
Fix lost function in abstract_factory
Merge branch 'grtfou-master'
update output of abstract_factory.py
Add chaining method pattern
Append input
update readme
fix filename
prefer python3 over 2
Merge branch 'duythinht-master'
Revert "edit the publish_subscribe.py"

This reverts commit fee070271088ca2fd08fcb10ecf1dba8f86b51ff.