Om het minimum te vinden, begin je met float("inf") (oneindig groot) en vervang je dat telkens door een kleinere waarde:

steden = {
    "Amsterdam":    {"land": "Nederland",  "inwoners": 921000},
    "Buenos Aires": {"land": "Argentiniƫ", "inwoners": 2890000},
    "Tokyo":        {"land": "Japan",      "inwoners": 13960000}
}

kleinste = float("inf")
for stad in steden:
    if steden[stad]["inwoners"] < kleinste:
        kleinste = steden[stad]["inwoners"]

print("Kleinste stad:", kleinste, "inwoners.")

Voor het maximum begin je met float("-inf") (oneindig klein) en vervang je dat door een grotere waarde.

Om ook de naam van het minimum/maximum bij te houden, gebruik je een extra variabele:

kleinste_stad = ""
kleinste = float("inf")
for stad in steden:
    if steden[stad]["inwoners"] < kleinste:
        kleinste = steden[stad]["inwoners"]
        kleinste_stad = stad
print("Kleinste stad:", kleinste_stad, "met", kleinste, "inwoners.")