Nic jako privátní meto v Pythonu není.
K _ prostě přistupovat můžeš, ale pak se nediv...
Nicméně to že někdo takhle privátní metodu zprasí a spousta lidí mu ještě děkuje je nepochopitelné, prostě WTF...
Přesně tak, WTF. Rád bych poznamenal, Python není Java a neměla by se z něho Java dělat. To že Python nemá nic jako privátní typ se mě osobně náhodou velice líbí. Ale pokud byste v Pythonu skutečně něco programovali tak existují standardy na kterých se jednotlivý vývojáři domluvili a metody formátu __*__ jsou považovány za privátní a nikdo je z vnějšku nevolá. Pokud je zavoláte tak se nic nestane, ale vývojář je může odstranit či změnit a váš kód může bez ohlášení přestat fungovat.
To co já považuju na Pythonu za velice dobrého je, že nutí všechny vývojáře psát stejně strukturovaný kód (pravda kopírování kódu je pak občas peklo) a dále že přímo integruje dokumentaci. Součástí definice jazyka je prostě i způsob jak dokumentovat a nástoje (žlutou vlnovkou) opozorňují že dokumentace chybí. Příjde mi prostě, že python jako takový vynucuje slušné programátorské zvyklosti, to je celé. Že je ukecaný, to místy trochu je, ale alespoň není kryptický.
K tomu, co tu párkrát okrajově zaznělo, že Python díky tomu, že se nekompiluje neprovádí žádnou kontrolu (typovou či jakoukoli jinou), ano neprovádí, je to převážně skriptovací jazyk. Ale s nástroji pylint a pep8 se většina chyb objeví již v editoru.
Finálem k diskuzi o IDE. Rád bych poznamenal, že refaktroring je možné udělat i mimo IDE, stejně tak našeptávání a sémantické prohledávání a to možná ještě efektivnějí než v případě IDE, které mají mnohdy na velkých projektech problémy. V tomto případě hovořím především o C/C++, pro Javu bych s IDE neváhal. Jinak k výběru IDE, mnohdy nemáte na výběr už jen kvůli tomu co se na projektu používalo dodneška. Pro některé existuje svět i mimo web a PC a v tomto světě většinou skončíte na IDE které má podporu právě pro vaši platformu a změna je prakticky nemožná. Z tohoto pohledu mi přijdou takové dohady zbytečné a programátor prostě musí dělat v tom v čem musí a zrovna podpora více IDE není většinou to co se ve vývoji chce podporovat, protože to není to co zákazník uvidí, práce na více platformách má už větší smysl.