Reduce redundant calls to str() in _Environ class.
diff --git a/Lib/os.py b/Lib/os.py
index 2987cfc..f13850b 100644
--- a/Lib/os.py
+++ b/Lib/os.py
@@ -424,8 +424,9 @@
         def __getitem__(self, key):
             return self.data[self.keymap(key)]
         def __setitem__(self, key, value):
-            self.putenv(key, str(value))
-            self.data[self.keymap(key)] = str(value)
+            value = str(value)
+            self.putenv(key, value)
+            self.data[self.keymap(key)] = value
         def __delitem__(self, key):
             self.unsetenv(key)
             del self.data[self.keymap(key)]
@@ -438,7 +439,7 @@
             return dict(self)
         def setdefault(self, key, value):
             if key not in self:
-                self[key] = str(value)
+                self[key] = value
             return self[key]
 
     try: