As per @Knoble's answer .vim/after/ftplugin/*.vim are the right config files to be fiddling with. My preferred solution is now to put the mappings in the .vimrc (i.e. nnoremap [[ #) and just unmap the overriding buffer specific mapping in the after/ftplugin/*.vim file (i.e. nunmap <buffer> [[)
This has the benefit of leaving the mappings in the .vimrc ...
Answers from the comments:
An ftplugin version (fairly standard): in .vim/after/ftplugin put the following where you need it (e.g., python.vim):
nnoremap <buffer> [[ #
It is odd that you need to nunmap though.
Working with the plugin: if you want to get rid of all python specific mappings, you can simply define :let g:no_python_maps=1, if ...