Para aclarar --- tuve que pensar por un tiempo en lo que significan esta pregunta y respuesta --- los documentos de Python.org en os.environ no se molestan en mencionar todos los métodos incorporados para mapear tipos (como os.environ, que es básicamente un diccionario al que se han dado métodos adicionales).
En su lugar, mencionan principalmente los métodos adicionales que han dado a un objeto en el sistema operativo, denominado ambiental y derivado del tipo dict, más allá de los que ya tiene Dict incorporados. De un libro que tengo en Python, la sinopsis para cualquier tipo de diccionario es dict.setdefault (key, default = None), y la explicación es que es similar a get() pero establece dict [key] = default si key aún no está en dict.
es posible que el nombre predeterminado no sea bien elegido aquí porque se confunde fácilmente con somevariablename = defaultvalue, la forma normal de declarar los valores predeterminados en una declaración de función. Es decir, mientras que default = None ciertamente establece un valor por defecto, no está claro cómo setdefault en algún sentido esencialmente establece un valor predeterminado, ya que por defecto se le puede dar cualquier valor.
Hay un método similar 'dict.setdefault' con la misma funcionalidad. – eumiro