python bestanden opslaan in gebruikersmap (Windows)

Ik heb dit programma in Python dat tekstbestanden moet opslaan in een map in de "Mijn documenten" van de gebruiker. Het probleem is dat het programma de gebruikersnaam niet kent, of de Windows-versie om het juiste pad te kennen. Hoe kan ik dit voor elkaar krijgen?

1

3 antwoord

Het document zegt dat de volgende code is uitgebreid naar de thuismap van de gebruiker ook in windows ..

homeDir = os.path.expanduser("~")

Uit de documentatie:

Op Windows worden HOME en USERPROFILE gebruikt als deze zijn ingesteld, anders wordt een combinatie van HOMEPATH en HOMEDRIVE gebruikt. Een initiële ~ -gebruiker wordt afgehandeld door de laatste mapcomponent uit het hierboven gecreëerde gebruikerspad te strippen.


Also look into this for using Win32APIs

3
toegevoegd
de functie expanduser laadt USERPROFILE vanuit os.environ om dat te doen ...
toegevoegd de auteur JBernardo, de bron
@JBernardo: het gebruikt eigenlijk meer omgevingsvariabelen dan dat. Ik heb mijn bericht bijgewerkt met de eigenlijke formuleringen.
toegevoegd de auteur SuperSaiyan, de bron
bedankt allebei voor je hulp
toegevoegd de auteur marcocamejo, de bron
dit is niet de juiste oplossing, maar het helpt. Dit geeft het pad naar het huis van de gebruiker, niet de map Mijn documenten van de gebruiker
toegevoegd de auteur jeanc, de bron

Haal uit de omgevingsvariabele:

os.environ['USERPROFILE']

of

os.environ['HOME']
2
toegevoegd

Het pakket winpaths biedt functies voor het ophalen van de waarden die u nodig hebt.

2
toegevoegd