I can reproduce the bug with Python 3.6 on Fedora 26 and these locales:
* LC_ALL = LC_CTYPE = fr_FR (encoding = ISO8859-1)
* LC_NUMERIC= es_MX.utf8 (encoding = UTF-8)
Good: LC_NUMERIC = LC_CTYPE = LC_ALL = "es_MX.utf8"
haypo@selma$ env -i python3 -c 'import locale; locale.setlocale(locale.LC_ALL, "es_MX.utf8"); print(ascii(locale.localeconv()["thousands_sep"]))'
=> '\u2009'
Bug: LC_NUMERIC = "es_MX.utf8" but LC_CTYPE = LC_ALL = "fr_FR"
haypo@selma$ env -i python3 -c 'import locale; locale.setlocale(locale.LC_ALL, "fr_FR"); locale.setlocale(locale.LC_NUMERIC, "es_MX.utf8"); print(ascii(locale.localeconv()["thousands_sep"]))'
=> '\xe2\x80\x89'