Hi Michael,
Retrieve the following sample to update language.
from arcgis.gis import GIS
gis=GIS("https://arcgis.com", "login", "password")
users= gis.users.search(query='')
##For testing filter user by startswith
users=[user for user in users if user.username.startswith('user')]
##Read original 2 users profil:
for u in range(len(users)):
print('Original profil: lastName: {0}, units: {1}, culture: {2}, region: {3}'.format(users[u].lastName, users[u].units, users[u].culture, users[u].region))
#As result, we have:
#Original profil: lastName: demo2, units: metric, culture: en-US, region: EN
#Original profil: lastName: demo3, units: metric, culture: en-US, region: EN
##Write user profil:
for u in range(len(users)):
users[u].update(culture='fr-FR', region='FR')
##Read modified 2 users profil:
for u in range(len(users)):
print('Modified profil: lastName: {0}, units: {1}, culture: {2}, region: {3}'.format(users[u].lastName, users[u].units, users[u].culture, users[u].region))
#As result, we have:
#Modified profil: lastName: demo2, units: metric, culture: fr-FR, region: FR
#Modified profil: lastName: demo3, units: metric, culture: fr-FR, region: FR
According the doc it seems you cannot update units from user profile. See link below https://developers.arcgis.com/python/api-reference/arcgis.gis.toc.html#user
Extract :
update(access=None, preferred_view=None, description=None, tags=None, thumbnail=None, fullname=None, email=None, culture=None, region=None, first_name=None, last_name=None, security_question=None, security_answer=None)
Hope this help you,
Fred