diff --git a/Lib/test/string_tests.py b/Lib/test/string_tests.py
index 69a2225..e56bc02 100644
--- a/Lib/test/string_tests.py
+++ b/Lib/test/string_tests.py
@@ -1066,6 +1066,9 @@
         self.checkraises(ValueError, S, 'partition', '')
         self.checkraises(TypeError, S, 'partition', None)
 
+        # mixed use of str and unicode
+        self.assertEqual('a/b/c'.partition(u'/'), ('a', '/', 'b/c'))
+
     def test_rpartition(self):
 
         self.checkequal(('this is the rparti', 'ti', 'on method'),
@@ -1081,6 +1084,8 @@
         self.checkraises(ValueError, S, 'rpartition', '')
         self.checkraises(TypeError, S, 'rpartition', None)
 
+        # mixed use of str and unicode
+        self.assertEqual('a/b/c'.rpartition(u'/'), ('a/b', '/', 'c'))
 
 class MixinStrStringUserStringTest:
     # Additional tests for 8bit strings, i.e. str, UserString and
diff --git a/Misc/NEWS b/Misc/NEWS
index d2d58a5..0f00535 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -12,6 +12,9 @@
 Core and builtins
 -----------------
 
+- Issue #3751: str.rpartition would perform a left-partition when called with
+  a unicode argument.
+
 - Issue #3537: Fix an assertion failure when an empty but presized dict
   object was stored in the freelist.
 
diff --git a/Objects/stringobject.c b/Objects/stringobject.c
index 60d3e8a..8588343 100644
--- a/Objects/stringobject.c
+++ b/Objects/stringobject.c
@@ -1595,7 +1595,7 @@
 	}
 #ifdef Py_USING_UNICODE
 	else if (PyUnicode_Check(sep_obj))
-		return PyUnicode_Partition((PyObject *) self, sep_obj);
+		return PyUnicode_RPartition((PyObject *) self, sep_obj);
 #endif
 	else if (PyObject_AsCharBuffer(sep_obj, &sep, &sep_len))
 		return NULL;
