bpo-38536: locale: Remove trailing space in formatted currency (GH-16864)

diff --git a/Lib/locale.py b/Lib/locale.py
index dd8a085..1a4e9f6 100644
--- a/Lib/locale.py
+++ b/Lib/locale.py
@@ -279,6 +279,8 @@
         if precedes:
             s = smb + (separated and ' ' or '') + s
         else:
+            if international and smb[-1] == ' ':
+                smb = smb[:-1]
             s = s + (separated and ' ' or '') + smb
 
     sign_pos = conv[val<0 and 'n_sign_posn' or 'p_sign_posn']
diff --git a/Lib/test/test_locale.py b/Lib/test/test_locale.py
index c5d8e26..2863d20 100644
--- a/Lib/test/test_locale.py
+++ b/Lib/test/test_locale.py
@@ -334,8 +334,7 @@
         euro = '\u20ac'
         self._test_currency(50000, "50000,00 " + euro)
         self._test_currency(50000, "50 000,00 " + euro, grouping=True)
-        # XXX is the trailing space a bug?
-        self._test_currency(50000, "50 000,00 EUR ",
+        self._test_currency(50000, "50 000,00 EUR",
             grouping=True, international=True)
 
 
diff --git a/Misc/NEWS.d/next/Library/2019-10-21-20-24-51.bpo-38536.beZ0Sk.rst b/Misc/NEWS.d/next/Library/2019-10-21-20-24-51.bpo-38536.beZ0Sk.rst
new file mode 100644
index 0000000..147d181
--- /dev/null
+++ b/Misc/NEWS.d/next/Library/2019-10-21-20-24-51.bpo-38536.beZ0Sk.rst
@@ -0,0 +1,2 @@
+Removes trailing space in formatted currency with `international=True` and a locale with symbol following value.

+E.g. `locale.currency(12.34, international=True)` returned `'12,34 EUR '` instead of `'12,34 EUR'`.