Python 3-operativsystemstjänster



python-kommando

Den här sidan beskriver operativsystemstjänsterna i Python 3 och hur du använder dem.

Os: Diverse operativsystemgränssnitt

De du modulen ger ett bärbart sätt att använda operativsystemberoende funktioner. Om du bara vill läsa eller skriva en fil se öppna() , om du vill manipulera banor, se os.path och om du vill läsa alla rader i alla filer på kommandoraden, se filinmatning modul. För att skapa tillfälliga filer och kataloger, se tempfile och för fil- och kataloghantering på hög nivå, se shutil modul.

Anmärkningar om tillgängligheten av dessa funktioner:

  • Utformningen av alla inbyggda operativsystemberoende moduler i Python är så att så länge samma funktion är tillgänglig, använder den samma gränssnitt; till exempel funktionen os.stat (sökväg) returnerar statinformation om sökvägen i samma format (som råkar ha sitt ursprung i POSIX-gränssnittet).
  • Extensions som är speciella för ett visst operativsystem är också tillgängliga via os-modulen, men att använda dem är naturligtvis ett hot mot bärbarheten.
  • Alla funktioner som accepterar sökväg eller filnamn accepterar både byte och strängobjekt och resulterar i ett objekt av samma typ om en sökväg eller filnamn returneras.
  • En tillgänglighet: Unix-anteckning betyder att den här funktionen ofta finns i Unix-system. Det gör inga påståenden om dess existens på ett specifikt operativsystem.
  • Om det inte anges separat stöds alla funktioner som hävdar tillgänglighet: Unix på macOS X, som bygger på en Unix-kärna.

Notera: Alla funktioner i den här modulen höjs OSError vid ogiltiga eller otillgängliga filnamn och sökvägar eller andra argument som har rätt typ, men som inte accepteras av operativsystemet.

  exception   os.error  
Ett alias för det inbyggda undantaget för OSError.
os.name
Namnet på den importerade operativsystemberoende modulen. Följande namn har för närvarande registrerats: ' posix ',' t.ex ',' detta ',' java '.

Filnamn, kommandoradsargument och miljövariabler

I Python representeras filnamn, kommandoradsargument och miljövariabler med hjälp av strängtypen. På vissa system är det nödvändigt att avkoda dessa strängar till och från byte innan de skickas till operativsystemet. Python använder filsystemkodningen för att utföra denna konvertering (se sys.getfilesystemencoding () ).

nyckeln på den bärbara datorn fungerar inte

I vissa system kan konvertering med filsystemkodning misslyckas. I det här fallet använder Python surrogatbild kodningsfelhanterare, vilket innebär att okodningsbara byte ersätts av ett Unicode-tecken U + DCxx vid avkodning, och dessa översätts igen till originalbyten vid kodning.

Filsystemkodningen måste garantera att alla byte under 128 lyckas avkoda. Om filsystemkodningen inte ger denna garanti kan API-funktioner höja UnicodeError .

OS-processparametrar

Dessa funktioner och dataposter ger information och arbetar med den aktuella processen och användaren.

  os.ctermid()  
Returnera filnamnet som motsvarar processens kontrollterminal.

Tillgänglighet: Unix.
  os.environ  
Ett mappningsobjekt som representerar strängmiljön. Till exempel, om ['HEM'] är sökvägen till din hemkatalog (på vissa plattformar) och motsvarar getenv ('HEM') i C.

Denna mappning fångas första gången os-modulen importeras, vanligtvis under Pythons start som en del av bearbetningen site.py . Ändringar i miljön som gjorts efter denna tid återspeglas inte i os.environ , med undantag för ändringar som gjorts genom ändring os.environ direkt.

Om plattformen stöder putenv () funktion, kan denna kartläggning användas för att modifiera miljön och fråga miljön. putenv () kommer att anropas automatiskt när kartläggningen ändras.

På Unix använder tangenter och värden sys.getfilesystemencoding () och 'surrogateescape' felhanterare. Använda sig av miljö om du vill använda en annan kodning.

Notera: Kallelse putenv () direkt ändras inte os.environ , så det är bättre att ändra os.environ .

Notera: På vissa plattformar, inklusive FreeBSD och macOS X, inställning handla om kan orsaka minnesläckage. Se systemdokumentationen för putenv () .

Om putenv () tillhandahålls inte, kan en modifierad kopia av denna mappning skickas till lämpliga processer för att skapa funktioner för att barnprocesser ska använda en modifierad miljö.

Om plattformen stöder unsetenv () funktion kan du ta bort objekt i denna mappning för att avmarkera miljövariabler. unsetenv () kommer att anropas automatiskt när ett objekt raderas från os.environ , och när en av de pop () eller klar() metoder kallas.

  os.environb  
Bytesversion av miljö: ett kartläggningsobjekt som representerar miljön som byte-strängar. Miljön och miljön synkroniseras (modifiera miljö uppdateringar handla om , och vice versa).

miljö är endast tillgänglig om stöder_bytes_environ är Sann .
  os.chdir(   path   )   os.fchdir(   fd   )   os.getcwd()  
Dessa funktioner beskrivs i Arkiv och kataloger .
  os.fsencode(   filename   )  
Koda filnamn till filsystemkodningen med ' surrogatbild 'felhanterare, eller' sträng på Windows; returnera byte oförändrad.

fsdecode () är omvänd funktion.
  os.fsdecode(   filename   )  
Avkoda filnamn från filsystemkodningen med 'surrogateescape' felhanterare eller 'strikt' på Windows; returnera str oförändrad.

fsencode () är omvänd funktion.
  os.getenv(   key   ,   default   =None   )  
Returnera värdet på miljövariabeln nyckel- om det finns, eller standard om det inte gör det. De nyckel- , standard och resultatet är sid .

På Unix avkodas nycklar och värden med sys.getfilesystemencoding () och 'surrogateescape' felhanterare. Använda sig av os.getenvb () om du vill använda en annan kodning.

Tillgänglighet: de flesta smaker av Unix, Windows.
  os.getenvb(   key   ,   default   =None)  
Returnera värdet på miljövariabeln nyckel- om det finns, eller standard om det inte gör det. De nyckel- , standard och resultatet är byte.

Tillgänglighet: de flesta smaker av Unix.
  os.get_exec_path(   env   =None)  
Returnerar listan över kataloger som ska sökas efter en namngiven körbar, liknande ett skal, när en process startas. De env , när det anges, bör det vara en ordbok för miljövariabler att söka upp PATH i. Som standard, när env är Ingen , handla om är använd.
  os.getegid()  
Returnera det effektiva grupp-id för den aktuella processen. Detta motsvarar den inställda id-biten på filen som körs i den aktuella processen.

Tillgänglighet: Unix.
  os.geteuid()  
Returnera den aktuella processens effektiva användar-id.

Tillgänglighet: Unix.
  os.getgid()  
Returnera det verkliga grupp-id för den aktuella processen.

Tillgänglighet: Unix.
  os.getgrouplist(   user   ,   group   )  
Returlista över användarens grupp-ID. Om gruppen inte finns med i listan ingår den; vanligtvis, grupp anges som grupp-ID-fältet från lösenordsposten för användaren.

Tillgänglighet: Unix.
  os.getgroups()  
Returlista med kompletterande grupp-id: er som är associerade med den aktuella processen.

Tillgänglighet: Unix.

Notera:

På macOS X, getgroups () beteende skiljer sig något från andra Unix-plattformar. Om Python-tolk byggdes med ett distributionsmål på 10,5 eller tidigare, getgroups () returnerar listan över effektiva grupp-id: er associerade med den aktuella användarprocessen; denna lista är begränsad till ett systemdefinierat antal poster, vanligtvis 16, och kan ändras genom samtal till uppsättningsgrupper () om det är lämpligt. Om den byggs med ett distributionsmål som är större än 10,5, getgroups () returnerar den aktuella gruppåtkomstlistan för användaren som är associerad med det effektiva användar-id: n för processen; gruppåtkomstlistan kan ändras under hela livslängden, det påverkas inte av samtal till uppsättningsgrupper () , och dess längd är inte begränsad till 16. Distributionsmålvärdet, MACOSX_DEPLOYMENT_TARGET , kan erhållas med sysconfig.get_config_var () .
  os.getlogin()  
Returnera namnet på den användare som är inloggad på processens kontrollterminal. För de flesta ändamål är det mer användbart att använda miljövariablerna LOGNAMN eller ANVÄNDARNAMN för att ta reda på vem användaren är, eller pwd.getpwuid (os.getuid ()) [0] för att få inloggningsnamnet för det för närvarande effektiva användar-id: t.

Tillgänglighet: Unix, Windows.
  os.getpgid(   pid   )  
Returnera processgrupp-id för processen med process-id pid . Om pid är 0 returneras processgrupp-id för den aktuella processen.

Tillgänglighet: Unix.
  os.getpgrp()  
Returnera id för den aktuella processgruppen.

Tillgänglighet: Unix.
  os.getpid()  
Returnera det aktuella process-id: t.

Tillgänglighet: Unix, Windows.
  os.getppid()  
Returnera föräldrars process-id. När överordnadsprocessen har avslutats är id: t som returneras det id i init-processen, i Windows är det fortfarande samma id, som redan kan återanvändas av en annan process.

Tillgänglighet: Unix, Windows.
  os.getpriority(   which   ,   who   )  
Få programplaneringsprioritet. Värdet som är ett av PRIO_PROCESS , PRIO_PGRP , eller PRIO_USER , och vem som tolkas i förhållande till vilken (en processidentifierare för PRIO_PROCESS , processgruppsidentifierare för PRIO_PGRP , och ett användar-ID för PRIO_USER ). Ett nollvärde för vem som betecknar (respektive) samtalsprocessen, processgruppen för samtalsprocessen eller det verkliga användar-ID för samtalsprocessen.

Tillgänglighet: Unix.
  os.PRIO_PROCESS   os.PRIO_PGRP   os.PRIO_USER  
Parametrar för getpriority () och prioritera() funktioner.

Tillgänglighet: Unix.
  os.getresuid()  
Returnera en tuple ( vätska , euid , söder ) som anger den aktuella processens riktiga, effektiva och sparade användar-id.

Tillgänglighet: Unix.
  os.getresgid()  
Returnera en tuple (rgid, egid, sgid) som anger den aktuella processens verkliga, effektiva och sparade grupp-id.

Tillgänglighet: Unix.
  os.getuid()  
Returnera den aktuella processens riktiga användar-id.

Tillgänglighet: Unix.
  os.initgroups(   username   ,   gid   )  
Ring systemet initgroups () för att initialisera gruppåtkomstlistan med alla de grupper som det angivna användarnamnet är medlem, plus det angivna grupp-id: t.

Tillgänglighet: Unix.
  os.putenv(   key   ,   value   )  
Ställ in miljövariabeln med namnet nyckel- till strängen värde . Sådana miljöförändringar påverkar delprocesser som börjat med os.system () , popen () eller gaffel() och execv () .

Tillgänglighet: de flesta smaker av Unix, Windows.

Notera: På vissa plattformar, inklusive FreeBSD och macOS X, inställning handla om kan orsaka minnesläckage. Se systemdokumentationen för putenv .

När putenv () stöds, tilldelningar till objekt i os.environ översätts automatiskt till motsvarande samtal till putenv () ; ringer dock till putenv () uppdatera inte os.environ , så det är faktiskt att föredra att tilldela till objekt av os.environ .

  os.setegid(   egid   )  
Ställ in den aktuella processens effektiva grupp-id.

Tillgänglighet: Unix.
  os.seteuid(   euid   )  
Ställ in den aktuella processens effektiva användar-id.

Tillgänglighet: Unix.
  os.setgid(   gid   )  
Ställ in listan över kompletterande grupp-id: er som är kopplade till den aktuella processen till grupper. Grupperna måste vara en sekvens och varje element måste vara ett heltal som identifierar en grupp. Den här åtgärden är vanligtvis endast tillgänglig för superanvändaren.

Tillgänglighet: Unix.

Notera:

På macOS X får gruppernas längd inte överstiga det systemdefinierade maximala antalet effektiva grupp-id: n, typiskt 16. Se dokumentationen för getgroups () för fall där den kanske inte returnerar samma grupplista som angetts genom att ringa uppsättningsgrupper () .
  os.setpgrp()  
Ring systemanropet setpgrp () eller setpgrp (0, 0) beroende på vilken version som är implementerad (om någon). Se Unix-handboken för semantik.

Tillgänglighet: Unix.
  os.setpgid(   pid   ,   pgrp   )  
Ring systemanropet setpgid() för att ställa in processgrupps-id för processen med id pid till processgruppen med id pgrp. Se Unix-handboken för semantik.

Tillgänglighet: Unix.
  os.setpriority(   which   ,   who   ,   priority   )  
Ställ in programplaneringsprioritet. Värdet som är ett av PRIO_PROCESS , PRIO_PGRP , eller PRIO_USER , och vem som tolkas i förhållande till vilken (en processidentifierare för PRIO_PROCESS , processgruppsidentifierare för PRIO_PGRP , och ett användar-ID för PRIO_USER ). Ett nollvärde för vem som betecknar (respektive) samtalsprocessen, processgruppen för samtalsprocessen eller det verkliga användar-ID för samtalsprocessen. De prioritet är ett värde i intervallet -tjugo till 19 . Standardprioriteten är 0 ; lägre prioriteringar orsakar mer gynnsam schemaläggning.

Tillgänglighet: Unix
  os.setregid(   rgid   ,   egid   )  
Ställ in den aktuella processens verkliga och effektiva grupp-ID.

Tillgänglighet: Unix.
  os.setresgid(   rgid   ,   egid   ,   sgid   )  
Ställ in den aktuella processens verkliga, effektiva och sparade grupp-id.

Tillgänglighet: Unix.
  os.setresuid(   ruid   ,   euid   ,   suid   )  
Ställ in den aktuella processens verkliga, effektiva och sparade användar-ID. Tillgänglighet: Unix.
  os.setreuid(   ruid   ,   euid   )  
Ställ in den aktuella processens verkliga och effektiva användar-ID.
  os.getsid(   pid   )  
Ring systemanropet getsid () . Se Unix-handboken för semantik.

Tillgänglighet: Unix.
  os.setsid()  
Ring systemanropet setsid () . Se Unix-handboken för semantik.

Tillgänglighet: Unix.
  os.setuid(   uid   )  
Ställ in den aktuella processens användar-id.

Tillgänglighet: Unix.
  os.strerror(   code   )  
Returnera felmeddelandet som motsvarar felkoden i koden. På plattformar där strerror () returnerar NULL när ett okänt felnummer ges, ValueError höjs.

Tillgänglighet: Unix, Windows.
  os.supports_bytes_environ  
Sann om den inbyggda OS-typen av miljö är byte (t.ex. Falsk på Windows).
  os.umask(   mask   )  
Ställ in nuvarande numeriska umask och returnera föregående umask.

Tillgänglighet: Unix, Windows.
  os.uname()  
Returnerar information som identifierar det aktuella operativsystemet. Returvärdet är ett objekt med fem attribut:

  • sysnamn - operativsystemets namn
  • nodenamn - namnet på maskinen i nätverket (implementeringsdefinierat)
  • släpp - operativsystemsläpp
  • version - operativsystemversion
  • maskin - hårdvaruidentifierare
För bakåtkompatibilitet , det här objektet är också iterabelt, uppför sig som en fem-tupel som innehåller sysnamn, nodenamn, release, version och maskin i den ordningen.

Vissa system förkortar nodenamnet till 8 tecken eller till den ledande komponenten; ett bättre sätt att få värdnamn är uttag. gethostname () eller ens socket.gethostbyaddr (socket.gethostname () ).

Tillgänglighet: senaste smaker av Unix.
  os.unsetenv(   key   )  
Avmarkera (ta bort) den miljövariabel som heter nyckel- . Sådana miljöförändringar påverkar delprocesser som börjat med os.system () , popen () eller gaffel() och execv () .

När unsetenv () stöds, raderas borttagning av objekt i os.environ automatiskt till ett motsvarande samtal till unsetenv () ; ringer dock till unsetenv () uppdatera inte os.environ , så det är faktiskt att föredra att ta bort objekt från os.environ .

Tillgänglighet: de flesta smaker av Unix, Windows.

Skapa filobjekt

Denna funktion skapar nya filobjekt. (Se även öppna() för att öppna filbeskrivare.)

  os.fdopen(   fd   , *   args   , **   kwargs   )  
Returnera ett öppet filobjekt som är kopplat till filbeskrivaren fd . Detta är ett alias för öppna() inbyggd funktion och accepterar samma argument. Den enda skillnaden är att det första argumentet av fdopen () måste alltid vara ett heltal.

filbeskrivningsåtgärder

Dessa funktioner fungerar på I / O-strömmar som refereras med filbeskrivare.

Filbeskrivare är små heltal som motsvarar en fil som har öppnats genom den aktuella processen. Till exempel är standardinmatning vanligtvis filbeskrivare 0 , standardutgång är 1 och standardfel är två . Ytterligare filer som öppnas genom en process kommer sedan att tilldelas 3 , 4 , 5 , och så vidare. Namnfilbeskrivaren är något vilseledande; på Unix-plattformar hänvisas också till uttag och rör av filbeskrivare.

De Ingen fil() metoden kan användas för att erhålla filbeskrivaren som är associerad med ett filobjekt när så krävs Observera att användning av filbeskrivaren direkt kommer att kringgå filobjektmetoderna och ignorerar aspekter som intern buffring av data.

  os.close(   fd   )  
Stäng filbeskrivaren fd .

Tillgänglighet: Unix, Windows.

Notera: Den här funktionen är avsedd för I / O på låg nivå och måste tillämpas på en filbeskrivare som returneras av os.open () eller rör() . För att stänga ett filobjekt som returneras av den inbyggda funktionen öppna() eller genom popen () eller fdopen () , använd dess stänga() metod.
  os.closerange(   fd_low   ,   fd_high   )  
Stäng alla filbeskrivare från fd_low (inklusive) till fd_high (exklusiv), ignorerar fel. Motsvarar (men mycket snabbare än):

for fd in range(fd_low, fd_high): try: os.close(fd) except OSError: pass
Tillgänglighet: Unix, Windows.
  os.device_encoding(   fd   )  
Returnera en sträng som beskriver kodningen för den enhet som är associerad med fd om den är ansluten till en terminal; annars återvänder Ingen .
  os.dup(   fd   )  
Returnera en kopia av filbeskrivaren fd . Den nya filbeskrivaren är inte ärvbar.

I Windows, när du kopierar en standardström ( 0 : stdin, 1 : stdout, två : stderr), är den nya filbeskrivaren ärvbar.

Tillgänglighet: Unix, Windows.
  os.dup2(   fd   ,   fd2   ,   inheritable   =True)  
Kopiera filbeskrivaren fd till fd2 , stäng det senare om det behövs. Filbeskrivaren fd2 är ärvlig som standard eller ej ärvlig om ärftlig är Falsk .

Tillgänglighet: Unix, Windows.

Ändrad i version 3.4: Lägg till den valfria ärftliga parametern.
  os.fchmod(   fd   ,   mode   )  
Ändra läget för filen som ges av fd till det numeriska läget. Se dokumenten för chmod () för möjliga värden på läge . Från och med Python 3.3 motsvarar detta os.chmod (fd, mode) .

Tillgänglighet: Unix.
  os.fchown(   fd   ,   uid   ,   gid   )  
Ändra ägaren och grupp-id för filen som ges av fd till det numeriska uid och guide . För att lämna ett av ID: n oförändrat, ställ in det på -1 . Ser chown () . Från och med Python 3.3 motsvarar detta os.chown (fd, uid, gid) .

Tillgänglighet: Unix.
  os.fdatasync(   fd   )  
Tvinga skrivning av fil med filbeskrivare fd till disk. Tvingar inte uppdatering av metadata.

Tillgänglighet: Unix.

Notera: Denna funktion är inte tillgänglig på MacOS.
  os.fpathconf(   fd   ,   name   )  
Returnera systemkonfigurationsinformation som är relevant för en öppen fil. De namn anger konfigurationsvärdet som ska hämtas; det kan vara en sträng som är namnet på ett definierat systemvärde; dessa namn specificeras i ett antal standarder (POSIX.1, Unix 95, Unix 98 och andra). Vissa plattformar definierar också ytterligare namn. Namnen som är kända för värdoperativsystemet ges i pathconf_names lexikon. För konfigurationsvariabler som inte ingår i den mappningen accepteras också att skicka ett heltal för namn.

Om namnet är en sträng och inte är känd, ValueError höjs. Om ett specifikt namnvärde inte stöds av värdsystemet, även om det ingår i pathconf_names , ett OSError höjs med errno.EINVAL för felnumret.

Från och med Python 3.3 motsvarar detta os.pathconf (fd, namn) .

Tillgänglighet: Unix.
  os.fstat(   fd   )  
Returstatus för filbeskrivare fd , tycka om stat() . Från och med Python 3.3 motsvarar detta os.stat (fd) .

Tillgänglighet: Unix, Windows.
  os.fstatvfs(   fd   )  
Returnera information om filsystemet som innehåller filen associerad med filbeskrivaren fd , tycka om statvfs () . Från och med Python 3.3 motsvarar detta os.statvfs (fd) .

Tillgänglighet: Unix.
  os.fsync(   fd   )  
Tvinga skrivning av fil med filbeskrivare fd till disk. På Unix kallar detta den infödda fsync () fungera; på Windows, MS _begå() fungera.

Om du börjar med ett buffrat Python-filobjekt f , gör först f.flush () och gör sedan os.fsync (f.fileno ()) , för att säkerställa att alla interna buffertar associerade med f skrivs till disk.

Tillgänglighet: Unix, Windows.
  os.ftruncate(   fd   ,   length   )  
Avkorta filen som motsvarar filbeskrivaren fd , så att det är som mest längd byte i storlek. Från och med Python 3.3 motsvarar detta os.truncate (fd, längd) .

Tillgänglighet: Unix.
  os.isatty(   fd   )  
Lämna tillbaka Sann om filbeskrivaren fd är öppen och ansluten till en tty (-liknande) enhet, annars Falsk .
  os.lockf(   fd   ,   cmd   ,   len   )  
Applicera, testa eller ta bort ett POSIX-lås på en öppen filbeskrivare. De fd är en öppen filbeskrivare. De cmd anger kommandot som ska användas: en av FLOCK , F_TLOCK , F_ULOCK eller F_TEST . De len anger den del av filen som ska låsas.

Tillgänglighet: Unix.
  os.F_LOCK   os.F_TLOCK   os.F_ULOCK   os.F_TEST  
Flaggor som anger vilken åtgärd lockf () ska ta.

Tillgänglighet: Unix.
  os.lseek(   fd   ,   pos   ,   how   )  
Ställ in aktuell position för filbeskrivaren fd att positionera pos , modifierad av hur: SEEK_SET eller 0 att ställa in positionen relativt början av filen; SEEK_CUR eller 1 att ställa in den i förhållande till den aktuella positionen; SEEK_END eller två för att ställa in den i förhållande till slutet av filen. Returnera den nya markörpositionen i byte, från början.

Tillgänglighet: Unix, Windows.
  os.SEEK_SET   os.SEEK_CUR   os.SEEK_END  
Parametrar till lseek () fungera. Deras värderingar är 0 , 1 och två respektive.

Tillgänglighet: Unix, Windows.
  os.open(   file   ,   flags   ,   mode   =0o777,   *,   dir_fd   =None)  
Öppna filfilen och ställ in olika flaggor enligt flaggor och eventuellt dess läge enligt läge. I dataläge maskeras det aktuella umaskvärdet först. Returnera filbeskrivaren för den nyöppnade filen. Den nya filbeskrivaren är inte ärvbar.

För en beskrivning av flagg- och lägesvärden, se C-runtime-dokumentationen; flaggkonstanter (som O_RDONLY och O_WRONLY ) definieras i du modul. I synnerhet om Windows lägga till O_BINÄR behövs för att öppna filer i binärt läge.

Denna funktion kan stödja sökvägar i förhållande till katalogbeskrivare med dir_fd parameter.

Tillgänglighet: Unix, Windows.

Notera: Denna funktion är avsedd för I / O på låg nivå. Använd den inbyggda funktionen för normal användning öppna() , som returnerar ett filobjekt med läsa() och skriva() metoder (och många fler). För att lägga in en filbeskrivare i ett filobjekt, använd fdopen () .

Nytt i version 3.3: The dir_fd argument.

Följande konstanter är alternativ för flaggparametern till öppna() fungera. De kan kombineras med bitvis ELLER-operatör | . Vissa av dem är inte tillgängliga på alla plattformar. För beskrivningar av deras tillgänglighet och användning, se öppna() manuell sida på Unix eller MSDN på Windows.

hur hittar du ditt moderkort windows 10
  os.O_RDONLYos.O_WRONLYos.O_RDWRos.O_APPENDos.O_CREATos.O_EXCLos.O_TRUNC  

Ovanstående konstanter är tillgängliga på Unix och Windows.

  os.O_DSYNCos.O_RSYNCos.O_SYNCos.O_NDELAYos.O_NONBLOCKos.O_NOCTTYos.O_SHLOCKos.O_EXLOCKos.O_CLOEXEC  

Ovanstående konstanter är endast tillgängliga på Unix.

  os.O_BINARYos.O_NOINHERITos.O_SHORT_LIVEDos.O_TEMPORARYos.O_RANDOMos.O_SEQUENTIALos.O_TEXT  

Ovanstående konstanter är endast tillgängliga på Windows.

  os.O_ASYNCos.O_DIRECTos.O_DIRECTORYos.O_NOFOLLOWos.O_NOATIMEos.O_PATHos.O_TMPFILE  

Ovanstående konstanter är GNU-tillägg och finns inte om de inte definieras av C-biblioteket.

  os.openpty()  
Öppna ett nytt pseudoterminalpar. Returnera ett par filbeskrivare (master, slave) för pty respektive tty. De nya filbeskrivarna är inte ärvliga. För en (något) mer bärbar metod, använd pty modul.

Tillgänglighet: några smaker av Unix.
  os.pipe()  
Skapa ett rör. Returnera ett par filbeskrivare (r, w) användbar för läsning respektive skrivning. Den nya filbeskrivaren är inte ärvbar.

Tillgänglighet: Unix, Windows.
  os.pipe2(   flags   )  
Skapa ett rör med flaggor satt atomiskt. Flaggorna kan konstrueras genom att ORing tillsammans ett eller flera av dessa värden: O_NONBLOCK , O_CLOEXEC . Returnera ett par filbeskrivare (r, w) användbar för läsning respektive skrivning.

Tillgänglighet: några smaker av Unix.
  os.posix_fallocate(   fd   ,   offset   ,   len   )  
Säkerställer att tillräckligt med diskutrymme är tilldelat för den fil som anges fd med början från offset och fortsätter för len byte.

Tillgänglighet: Unix.
  os.posix_fadvise(   fd   ,   offset   ,   len   ,   advice   )  
Tillkännager en avsikt att komma åt data i ett specifikt mönster och därmed låta kärnan göra optimeringar. Rådgivningen gäller den region av filen som anges av fd börjar vid offset och fortsätter för len byte. De råd är en av POSIX_FADV_NORMAL , POSIX_FADV_SEQUENTIAL , POSIX_FADV_RANDOM , POSIX_FADV_NOREUSE , POSIX_FADV_WILLNEED eller POSIX_FADV_DONTNEED .

Tillgänglighet: Unix.
  os.POSIX_FADV_NORMALos.POSIX_FADV_SEQUENTIALos.POSIX_FADV_RANDOMos.POSIX_FADV_NOREUSEos.POSIX_FADV_WILLNEEDos.POSIX_FADV_DONTNEED  
Flaggor som kan användas som råd i posix_fadvise () som anger åtkomstmönstret som sannolikt kommer att användas.

Tillgänglighet: Unix.
  os.pread(   fd   ,   buffersize   ,   offset   )  
Läs från en filbeskrivare, fd , vid en position av offset . Det kommer att läsa upp till buffertstorlek antal byte. Filförskjutningen förblir oförändrad.

Tillgänglighet: Unix.
  os.pwrite(   fd   ,   string   ,   offset   )  
Skriv sträng till en filbeskrivare, fd , från offset lämnar filen offset oförändrad.

Tillgänglighet: Unix.
  os.read(   fd   ,   n   )  
Läs högst n byte från filbeskrivaren fd . Returnera en bytring som innehåller lästa byte. Om slutet på filen som avses i fd har nåtts returneras ett tomt byteobjekt.

Tillgänglighet: Unix, Windows.

Notera: Den här funktionen är avsedd för I / O på låg nivå och måste tillämpas på en filbeskrivare som returneras av os.open () eller rör() . Att läsa ett filobjekt som returneras av den inbyggda funktionen öppna() eller genom popen () eller fdopen () , eller sys.stdin , använd dess läsa() eller readline () metoder.
  os.sendfile(   out   ,   in   ,   offset   ,   nbytes   )   os.sendfile(   out   ,   in   ,   offset   ,   nbytes   ,   headers   =None,   trailers   =None,   flags   =0)  
Kopiera nbytes byte från filbeskrivaren in till filbeskrivningen utifrån start. Returnera antalet byte som skickats. När EOF nås, återvänd 0 .

Den första funktionsnotationen stöds av alla plattformar som definierar skicka Fil() .

På Linux, om offset ges som Ingen läses byten från den aktuella positionen för i och positionen för i uppdateras.

Det andra fallet kan användas på macOS X och FreeBSD där rubriker och trailers är godtyckliga sekvenser av buffertar som skrivs före och efter att data från in skrivs. Det returnerar samma som det första fallet.

På macOS X och FreeBSD är värdet på 0 för nbytes anger att skicka till slutet av i är nådd.

Alla plattformar stöder uttag som ut filbeskrivare, och vissa plattformar tillåter också andra typer (t.ex. vanlig fil, rör).

Tillgänglighet: Unix.
  os.SF_NODISKIOos.SF_MNOWAITos.SF_SYNC  
Parametrar till skicka Fil() funktion, om implementeringen stöder dem.

Tillgänglighet: Unix.
  os.readv(   fd   ,   buffers   )  
Läs från en filbeskrivare fd i ett antal muterbara bytesliknande objektbuffertar. readv () kommer att överföra data till varje buffert tills den är full och sedan gå vidare till nästa buffert i sekvensen för att hålla resten av data. readv () returnerar det totala antalet lästa byte (som kan vara mindre än den totala kapaciteten för alla objekt).

Tillgänglighet: Unix.
  os.tcgetpgrp(   fd   )  
Returnera processgruppen som är associerad med terminalen som ges av fd (en öppen filbeskrivare som returneras av os.open () ).

Tillgänglighet: Unix.
  os.tcsetpgrp(   fd   ,   pg   )  
Ställ in processgruppen som är associerad med terminalen som ges av fd (en öppen filbeskrivare som returneras av os.open () ) till sid .

Tillgänglighet: Unix.
  os.ttyname(   fd   )  
Returnera en sträng som specificerar terminalenheten som är associerad med filbeskrivaren fd . Om fd är inte associerad med en terminalenhet, ett undantag tas upp.

Tillgänglighet: Unix.
  os.write(   fd   ,   str   )  
Skriv bytestningen i str till filbeskrivaren fd. Returnera antalet byte som faktiskt skrivits.

Tillgänglighet: Unix, Windows.

Notera: Den här funktionen är avsedd för I / O på låg nivå och måste tillämpas på en filbeskrivare som returneras av os.open () eller rör() . Att skriva ett filobjekt som returneras av den inbyggda funktionen öppna() eller genom popen () eller fdopen () , eller sys.stdout eller sys.stderr , använd dess skriva() metod.
  os.writev(   fd   ,   buffers   )  
Skriv innehållet i buffertar till filbeskrivaren fd . Buffertarna måste vara en sekvens av bytesliknande objekt. skrivev () skriver innehållet i varje objekt till filbeskrivaren och returnerar det totala antalet skrivna byte.

Tillgänglighet: Unix.

Fråga storleken på en terminal

  os.get_terminal_size(   fd   =STDOUT_FILENO)  
Returnera terminalfönstrets storlek som (kolumner, rader) , typ av typ terminal_storlek .

Det valfria argumentet fd (standard STDOUT_FILENO , eller standardutdata) anger vilken filbeskrivare som ska ifrågasättas.

Om filbeskrivaren inte är ansluten till en terminal höjs en OSError.

shutil.get_terminal_size () är den högnivåfunktion som normalt ska användas, os.get_terminal_size är implementeringen på låg nivå.

Tillgänglighet: Unix, Windows.
  class   os.terminal_size  
En underklass av tupel som håller (kolumner, rader) av terminalfönstrets storlek.

kolumner : Terminalfönstrets bredd i tecken.

rader : Terminalfönstrets höjd i tecken.

Arv av filbeskrivare

En filbeskrivare har en ärftlig flagga som indikerar om filbeskrivaren kan ärvas av barnprocesser. Sedan Python 3.4 är filbeskrivare som skapats av Python inte ärvliga som standard.

På UNIX stängs icke-ärvliga filbeskrivare i underprocesser vid körning av ett nytt program, andra filbeskrivningar ärvs.

I Windows stängs icke-ärvbara handtag och filbeskrivare i underprocesser, med undantag för standardströmmar (filbeskrivare 0 , 1 och två : stdin, stdout och stderr), som alltid ärvs. Använder sig av ge upphov till* funktioner, alla ärvbara handtag och alla ärvda filbeskrivare ärvs. Använda underprocess modulen stängs alla filbeskrivare utom standardströmmar och ärvbara handtag ärvs bara om parametern close_fds är Falsk .

  os.get_inheritable(   fd   )  
Få den ärftliga flaggan för den angivna filbeskrivaren (en boolean).
  os.set_inheritable(   fd   ,   inheritable   )  
Ställ in den ärftliga flaggan för den angivna filbeskrivaren.
  os.get_handle_inheritable(   handle   )  
Få den ärftliga flaggan för det angivna handtaget (en booleska). Tillgänglighet: Windows.
  os.set_handle_inheritable(   handle   ,   inheritable   )  
Ställ in den ärftliga flaggan för det angivna handtaget.

Tillgänglighet: Windows.

Filer och kataloger

På vissa Unix-plattformar stöder många av dessa funktioner en eller flera av dessa funktioner:

  • specificera en filbeskrivare: För vissa funktioner kan sökargumentet inte bara vara en sträng som ger ett söknamn utan också en filbeskrivare. Funktionen fungerar sedan på den fil som beskrivs i beskrivningen. (För POSIX-system kommer Python att ringa till f ... version av funktionen.)

    Du kan kontrollera om sökvägen kan anges som en filbeskrivare på din plattform med os.supports_fd . Om det inte är tillgängligt, kommer det att höja en NotImplementedError .

    Om funktionen också stöder dir_fd eller följ_symlänkar argument är det ett fel att ange en av dessa när du tillhandahåller sökväg som en filbeskrivare.
  • sökvägar i förhållande till katalogbeskrivare: Om dir_fd är inte Ingen , det borde vara en filbeskrivare som hänvisar till en katalog, och sökvägen att arbeta ska vara relativ; sökvägen kommer då att vara relativt den katalogen. Om vägen är absolut, dir_fd ignoreras. (För POSIX-system kommer Python att ringa till ...på eller fett version av funktionen.) Du kan kontrollera om eller inte dir_fd stöds på din plattform med os.supports_dir_fd. Om det inte är tillgängligt kommer det att leda till en NotImplementedError genom att använda den.
  • sökvägar i förhållande till katalogbeskrivare: Om dir_fd är inte Ingen , det borde vara en filbeskrivare som hänvisar till en katalog, och sökvägen att arbeta ska vara relativ; sökvägen kommer då att vara relativt den katalogen. Om vägen är absolut, dir_fd ignoreras. (För POSIX-system kommer Python att ringa till ...på eller fett version av funktionen.)

    Du kan kontrollera om eller inte dir_fd stöds på din plattform med os.supports_dir_fd . Om det inte är tillgängligt kommer det att leda till en NotImplementedError genom att använda den.
  • följer inte symlänkar: Om följ_symlänkar är Falsk , och det sista elementet i sökvägen att fungera är en symbolisk länk, funktionen fungerar på den symboliska länken i stället för den fil som länken pekar på. (För POSIX-system kommer Python att ringa till Jag ... version av funktionen.)

    Du kan kontrollera om eller inte följ_symlänkar stöds på din plattform med os.supports_follow_symlinks . Om det inte är tillgängligt kommer det att leda till en NotImplementedError genom att använda den.
  os.access(   path   ,   mode   , *,   dir_fd   =None,   effective_ids   =False,   follow_symlinks   =True)  
Använd den verkliga uid / gid för att testa åtkomst till väg . Observera att de flesta operationer kommer att använda den effektiva uid / gid, därför kan denna rutin användas i en suid / sgid-miljö för att testa om den anropande användaren har angiven åtkomst till väg . De läge borde vara F_OK för att testa existensen av väg , eller så kan det inkludera ELLER en eller flera av R_OK , WOK och X_OK för att testa behörigheter. Lämna tillbaka Sann om åtkomst tillåts, Falsk om inte. Se dokumentationen för åtkomst () för mer information.

Denna funktion kan stödja att ange sökvägar i förhållande till katalogbeskrivare och inte följa symlänkar.

Om effektiva_id är Sann , tillgång() kommer att utföra sina åtkomstkontroller med den effektiva uid / gid istället för den verkliga uid / gid. De effektiva_id kanske inte stöds på din plattform; du kan kontrollera om den är tillgänglig med os.supports_effective_ids . Om det inte är tillgängligt kommer det att leda till en NotImplementedError genom att använda den.

Tillgänglighet: Unix, Windows.

Notera:

Använder sig av tillgång() för att kontrollera om en användare har behörighet att t.ex. öppna en fil innan den faktiskt använder det öppna() skapar ett säkerhetshål eftersom användaren kan utnyttja det korta tidsintervallet mellan att kontrollera och öppna filen för att manipulera den. Det är att föredra att använda EAFP-tekniker. Till exempel:

if os.access('myfile', os.R_OK): with open('myfile') as fp: return fp.read()return 'some default data'
är bättre skriven som:

try: fp = open('myfile')except PermissionError: return 'some default data'else: with fp: return fp.read()
Notera: I / O-operationer kan misslyckas även när tillgång() indikerar att de skulle lyckas, särskilt för operationer på nätverksfilsystem som kan ha behörighetssemantik utöver den vanliga POSIX-tillståndsbitmodellen.
  os.F_OKos.R_OKos.W_OKos.X_OK  
Värden som ska skickas som lägesparameter för tillgång() för att testa vägens existens, läsbarhet, skrivbarhet och körbarhet.
  os.chdir(   path   )  
Ändra den aktuella arbetskatalogen till väg .

Denna funktion kan stödja specificering av en filbeskrivare. Beskrivningen måste referera till en öppnad katalog, inte en öppen fil.

Tillgänglighet: Unix, Windows.
  os.chflags(   path   ,   flags   , *,   follow_symlinks   =True)  
Ställ in flaggorna för väg till det numeriska flaggor . De flaggor kan ta en kombination (bitvis ELLER) av följande värden (som definieras i stat modul):

  • stat.UF_NODUMP
  • stat.UF_IMMUTABLE
  • stat.UF_APPEND
  • stat.UF_OPAQUE
  • stat.UF_NOUNLINK
  • stat.UF_COMPRESSED
  • stat.UF_HIDDEN
  • stat.SF_ARCHIVED
  • stat.SF_IMMUTABLE
  • stat.SF_APPEND
  • stat.SF_NOUNLINK
  • stat.SF_SNAPSHOT
Denna funktion kan stödja icke-följande symlänkar.
  os.chmod(   path   ,   mode   , *,   dir_fd   =None,   follow_symlinks   =True)  
Ändra läget för väg till det numeriska läge . De läge kan ta ett av följande värden (som definieras i stat modul) eller bitvis ORed-kombinationer av dem:

  • stat.S_ISUID
  • stat.S_ISGID
  • stat.S_ENFMT
  • stat.S_ISVTX
  • stat.S_IREAD
  • stat.S_IWRITE
  • stat.S_IEXEC
  • stat.S_IRWXU
  • stat.S_IRUSR
  • stat.S_IWUSR
  • stat.S_IXUSR
  • stat.S_IRWXG
  • stat.S_IRGRP
  • stat.S_IWGRP
  • stat.S_IXGRP
  • stat.S_IRWXO
  • stat.S_IROTH
  • stat.S_IWOTH
  • stat.S_IXOTH
Denna funktion kan stödja specificering av en filbeskrivare, sökvägar i förhållande till katalogbeskrivare och icke-följande symlänkar.

Tillgänglighet: Unix, Windows.

Notera: Även om Windows stöder chmod () kan du bara ställa in filens skrivskyddade flagga med den (via stat.S_IWRITE och stat.S_IREAD konstanter eller motsvarande heltal). Alla andra bitar ignoreras.
  os.chown(   path   ,   uid   ,   gid   , *,   dir_fd   =None,   follow_symlinks   =True)  
Ändra ägare och grupp-id för väg till det numeriska uid och guide . För att lämna ett av ID: n oförändrat, ställ in det på -1 .

Denna funktion kan stödja specificering av en filbeskrivare, sökvägar i förhållande till katalogbeskrivare och icke-följande symlänkar.

Ser shutil.chown () för en högre nivåfunktion som accepterar namn utöver numeriska id.

Tillgänglighet: Unix.
  os.chroot(   path   )  
Ändra rotkatalogen för den aktuella processen till väg .

Tillgänglighet: Unix.
  os.fchdir(   fd   )  
Ändra den aktuella arbetskatalogen till den katalog som representeras av filbeskrivaren fd . Beskrivningen måste referera till en öppnad katalog, inte en öppen fil. Från och med Python 3.3 motsvarar detta os.chdir (fd) .

Tillgänglighet: Unix.
  os.getcwd()  
Returnera en sträng som representerar den aktuella arbetskatalogen.

Tillgänglighet: Unix, Windows.
  os.getcwdb()  
Returnera en bytring som representerar den aktuella arbetskatalogen.

Tillgänglighet: Unix, Windows.
  os.lchflags(   path   ,   flags   )  
Ställ in flaggorna för väg till det numeriska flaggor , tycka om chflags () , men följ inte symboliska länkar. Från och med Python 3.3 motsvarar detta os.chflags (sökväg, flaggor, följ_symlänkar = Falskt) .

Tillgänglighet: Unix.
  os.lchmod(   path   ,   mode   )  
Ändra läget för väg till det numeriska läge . Om väg är en symlink, detta påverkar symlink snarare än målet. Se dokumenten för chmod () för möjliga värden på läge . Från och med Python 3.3 motsvarar detta os.chmod (sökväg, läge, följ_symlänkar = Falskt) .

Tillgänglighet: Unix.
  os.lchown(   path   ,   uid   ,   gid   )  
Ändra ägare och grupp-id för väg till det numeriska uid och guide . Denna funktion följer inte symboliska länkar. Från och med Python 3.3 motsvarar detta os.chown (path, uid, gid, follow_symlinks = False) .

Tillgänglighet: Unix.
  os.link(   src   ,   dst   , *,   src_dir_fd   =None,   dst_dir_fd   =None,   follow_symlinks   =True)  
Skapa en hård länk som pekar på src som heter etc .

Denna funktion kan stödja specificering src_dir_fd och / eller dst_dir_fd att tillhandahålla sökvägar i förhållande till katalogbeskrivare och inte följa symlänkar.

Tillgänglighet: Unix, Windows.

Ändrad i version 3.2: Lagt till Windows-stöd.

Nytt i version 3.3: Lade till src_dir_fd , dst_dir_fd och följ_symlänkar argument.
  os.listdir(   path   ='.')  
Returnera en lista som innehåller namnen på posterna i katalogen som ges av sökvägen. Listan är i godtycklig ordning och inkluderar inte specialposterna '.' och '..' även om de finns i katalogen.

De väg kan vara endera av typen sid eller av typ byte . Om väg är av typ byte , filnamnen som returneras kommer också att vara av typ byte ; under alla andra omständigheter kommer de att vara av typ sid .

Denna funktion kan också stödja specificering av en filbeskrivare; filbeskrivaren måste hänvisa till en katalog.

Notera: Att koda sid filnamn till byte, använd fsencode () .

Tillgänglighet: Unix, Windows.
  os.lstat(   path   , *,   dir_fd   =None)  
Utför motsvarande ett lstat () systemanrop på det givna väg . Liknande stat() , men följer inte symboliska länkar. På plattformar som inte stöder symboliska länkar är detta ett alias för stat() . Från och med Python 3.3 motsvarar detta os.stat (sökväg, dir_fd = dir_fd, follow_symlinks = False) .

Denna funktion kan också stödja sökvägar i förhållande till katalogbeskrivare.

Ändrad i version 3.2: Lagt till stöd för Windows 6.0 (Vista) symboliska länkar.

  os.mkdir(   path   ,   mode   =0o777, *,   dir_fd   =None)  
Skapa en katalog med namnet väg med numeriskt läge läge .

På vissa system, läge ignoreras. Där det används maskeras det aktuella umaskvärdet först. Om katalogen redan finns höjs OSError.

Denna funktion kan också stödja sökvägar i förhållande till katalogbeskrivare.

Det är också möjligt att skapa tillfälliga kataloger; se tempfile-modulens tempfile.mkdtemp () fungera.

Tillgänglighet: Unix, Windows.
  os.makedirs(   name   ,   mode   =0o777,   exist_ok   =False)  
Funktion för skapande av rekursiv katalog. Tycka om mkdir () , men gör alla kataloger på mellannivå som behövs för att innehålla bladkatalogen.

Standardläget är 0o777 (oktal). På vissa system, läge ignoreras. Där det används maskeras det aktuella umaskvärdet först.

Om exist_ok är Falsk (standard), en OSError höjs om målkatalogen redan finns.

Notera: makedirs () kommer att bli förvirrad om sökelementen som ska skapas inkluderar pardir (t.ex. ... på UNIX-system).

Denna funktion hanterar UNC-banor korrekt.

Före Python 3.4.1, om exist_ok var Sann och katalogen fanns, makedirs () skulle fortfarande ge upp ett fel om läget inte matchade läget för den befintliga katalogen. Eftersom detta beteende var omöjligt att implementera säkert togs det bort i Python 3.4.1.
  os.mkfifo(   path   ,   mode   =0o666, *,   dir_fd   =None)  
Skapa en FIFO (ett namngivet rör) med namnet väg med numeriskt läge läge . Det aktuella umaskvärdet maskeras först från läget.

Denna funktion kan också stödja sökvägar i förhållande till katalogbeskrivare.

FIFO är rör som kan nås som vanliga filer. FIFO finns tills de raderas (till exempel med os.unlink () ). Generellt används FIFOs som möte mellan klient- och servertypsprocesser: servern öppnar FIFO för läsning och klienten öppnar den för skrivning. Anteckna det mkfifo () öppnar inte FIFO: det skapar bara mötesplatsen.

Tillgänglighet: Unix.
  os.mknod(   filename   ,   mode   =0o600,   device   =0, *,   dir_fd   =None)  
Skapa en filsystemnod (fil, enhetsspeciell fil eller namngiven pipe) med namnet filnamn . läge anger både behörigheter att använda och vilken typ av nod som ska skapas, kombineras (bitvis ELLER) med en av stat.S_IFREG , stat.S_IFCHR , stat.S_IFBLK och stat.S_IFIFO (dessa konstanter finns i stat ). För stat.S_IFCHR och stat.S_IFBLK , definierar enheten den nyligen skapade enhetens specialfil (förmodligen med os.madeev () ), annars ignoreras det.

Denna funktion kan också stödja sökvägar i förhållande till katalogbeskrivare.
  os.major(   device   )  
Extrahera enhetens huvudnummer från ett rått enhetsnummer (vanligtvis st_dev eller st_rdev fält från stat ).
  os.minor(   device   )  
Extrahera enhetens mindre nummer från ett rått enhetsnummer (vanligtvis st_dev eller st_rdev fält från stat ).
  os.makedev(   major   ,   minor   )  
Komponera ett rått enhetsnummer från huvud- och mindre enhetsnummer.
  os.pathconf(   path   ,   name   )  
Returnera systemkonfigurationsinformation som är relevant för en namngiven fil. De namn anger konfigurationsvärdet som ska hämtas; det kan vara en sträng som är namnet på ett definierat systemvärde; dessa namn specificeras i ett antal standarder (POSIX.1, Unix 95, Unix 98 och andra). Vissa plattformar definierar också ytterligare namn. Namnen som är kända för värdoperativsystemet ges i pathconf_names lexikon. För konfigurationsvariabler som inte ingår i den mappningen accepteras också att skicka ett heltal för namn.

Om namnet är en sträng och inte är känd, ValueError höjs. Om ett specifikt namnvärde inte stöds av värdsystemet, även om det ingår i pathconf_names , ett OSError höjs med errno.EINVAL för felnumret.

Denna funktion kan stödja specificering av en filbeskrivare.

Tillgänglighet: Unix.
  os.pathconf_names  
Namn på ordbokskartläggning accepterade av pathconf () och fpathconf () till de heltalsvärden som definierats för dessa namn av värdoperativsystemet. Detta kan användas för att bestämma den uppsättning namn som är kända för systemet.

Tillgänglighet: Unix.
  os.readlink(   path   , *,   dir_fd   =None)  
Returnera en sträng som representerar sökvägen till vilken den symboliska länken pekar. Resultatet kan antingen vara ett absolut eller relativt sökväg; om den är relativ kan den konverteras till ett absolut söknamn med os.path.join (os.path.dirname (sökväg), resultat) .

Om väg är ett strängobjekt blir resultatet också ett strängobjekt och samtalet kan höja ett UnicodeDecodeError . Om vägen är en byte objekt blir resultatet a byte objekt.

Denna funktion kan också stödja sökvägar i förhållande till katalogbeskrivare.

Tillgänglighet: Unix, Windows

Ändrad i version 3.2: Lagt till stöd för Windows 6.0 (Vista) symboliska länkar.
  os.remove(   path   , *,   dir_fd   =None)  
Ta bort (ta bort) filen väg . Om väg är en katalog, höjs OSError. Använda sig av rmdir () för att ta bort kataloger.

Denna funktion kan stödja sökvägar i förhållande till katalogbeskrivare.

För Windows försöker du ta bort en fil som används orsakar ett undantag. på Unix tas katalogposten bort men lagringen som tilldelas filen görs inte tillgänglig förrän originalfilen inte längre används.

Denna funktion är identisk med ta bort länk () . Tillgänglighet: Unix, Windows.
  os.removedirs(   name   )  
Ta bort kataloger rekursivt. Fungerar som rmdir () förutom att om bladkatalogen har tagits bort, borttagna () försöker successivt ta bort varje överordnad katalog som nämns i sökvägen tills ett fel uppstår (vilket ignoreras, eftersom det vanligtvis betyder att en överordnad katalog inte är tom). Till exempel, os.removedirs ('foo / bar / baz') tar först bort katalogen ' foo / bar / baz och ta sedan bort Foo bar 'och' foo 'om de är tomma. Ökar OSError om bladkatalogen inte kunde tas bort.
  os.rename(   src   ,   dst   , *,   src_dir_fd   =None,   dst_dir_fd   =None)  
Byt namn på filen eller katalogen src till etc . Om etc är en katalog kommer OSError att höjas. På Unix, om etc existerar och är en fil, ersätts den tyst om användaren har behörighet. Åtgärden kan misslyckas på vissa Unix-smaker om src och etc finns på olika filsystem. Om det lyckas kommer bytet att bli en atomoperation (detta är ett POSIX-krav). I Windows, om etc redan finns kommer OSError att höjas även om det är en fil.

Denna funktion kan stödja specificering src_dir_fd och / eller dst_dir_fd för att tillhandahålla sökvägar i förhållande till katalogbeskrivare.

Om du vill skriva över plattformen över destinationen, använd byta ut() .

Tillgänglighet: Unix, Windows.
  os.renames(   old   ,   new   )  
Rekursiv katalog eller filbytesfunktion. Fungerar som Döp om() , förutom att man skapar några mellanliggande kataloger som behövs för att göra det nya sökvägen bra försöker man först. Efter namnbytet beskärs kataloger som motsvarar de bågsegment som är längst till höger i det gamla namnet med borttagna () .

Notera: Den här funktionen kan misslyckas med den nya katalogstrukturen som skapas om du saknar behörigheter som behövs för att ta bort bladkatalogen eller filen.
  os.replace(   src   ,   dst   , *,   src_dir_fd   =None,   dst_dir_fd   =None)  
Byt namn på filen eller katalogen src till etc . Om etc är en katalog kommer OSError att höjas. Om etc existerar och är en fil, ersätts den tyst om användaren har behörighet. Åtgärden kan misslyckas om src och etc finns på olika filsystem. Om det lyckas kommer bytet att bli en atomoperation (detta är ett POSIX-krav).

Denna funktion kan stödja specificering src_dir_fd och / eller dst_dir_fd för att tillhandahålla sökvägar i förhållande till katalogbeskrivare.

Tillgänglighet: Unix, Windows.
  os.rmdir(   path   , *,   dir_fd   =None)  
Ta bort (ta bort) katalogen väg . Fungerar bara när katalogen är tom, annars höjs OSError. För att ta bort hela katalogträd, shutil.rmtree () kan användas.

Denna funktion kan stödja sökvägar i förhållande till katalogbeskrivare.

Tillgänglighet: Unix, Windows.
  os.stat(   path   , *,   dir_fd   =None,   follow_symlinks   =True)  
Utför motsvarande a stat() systemanrop på det givna väg . De väg kan anges som antingen en sträng eller som en öppen filbeskrivare. (Den här funktionen följer normalt symlänkar; för att statera en symlänk lägg till argumentet follow_symlinks = Falskt , eller använd lstat () .)

Returvärdet är ett objekt vars attribut ungefär motsvarar medlemmarna i statstrukturen, nämligen:

  • st_mode - skyddsbitar,
  • st_ino - inodnummer,
  • st_dev - enhet,
  • st_nlink - antal hårda länkar,
  • st_uid - ägarens användar-ID,
  • st_gid - grupp-id för ägare,
  • st_size - filens storlek, i byte,
  • st_atime - tidpunkt för senaste åtkomst, uttryckt i sekunder,
  • st_mtime - tid för senaste innehållsändring uttryckt i sekunder,
  • st_ctime - plattformsberoende; tiden för senaste metadataändring på Unix, eller tidpunkten för skapande på Windows, uttryckt i sekunder
  • st_atime_ns - tidpunkt för senaste åtkomst uttryckt i nanosekunder som ett heltal,
  • st_mtime_ns - tidpunkt för senaste innehållsändring uttryckt i nanosekunder som ett heltal,
  • st_ctime_ns - plattformsberoende; tiden för senaste metadataändring på Unix, eller tidpunkten för skapande på Windows, uttryckt i nanosekunder som ett heltal
På vissa Unix-system (t.ex. Linux) kan följande attribut också vara tillgängliga:

  • st_blocks - antal 512 byte-block som tilldelats för filen
  • st_blksstorlek - filsystem blockstorlek för effektiv filsystem I / O
  • st_rdev - typ av enhet om en inodenhet
  • st_flags - användardefinierade flaggor för filen
På andra Unix-system (som FreeBSD) kan följande attribut vara tillgängliga (men kan bara fyllas i om root försöker använda dem):

  • st_gen - filgenereringsnummer
  • st_birthtime - tid för filskapande
Notera: Den exakta betydelsen och upplösningen av st_atime , st_mtime och st_ctime attribut beror på operativsystemet och filsystemet. Till exempel på Windows-system som använder filsystemen FAT eller FAT32, st_mtime har 2 sekunders upplösning och st_atime har bara en dags upplösning. Se dokumentationen för ditt operativsystem för mer information. På samma sätt, även om st_atime_ns , st_mtime_ns och st_ctime_ns uttrycks alltid i nanosekunder, många system ger inte nanosekundens precision. På system som ger nanosekundprecision, det flytande punktobjektet som används för att lagra st_atime , st_mtime och st_ctime kan inte bevara allt, och som sådant kommer det att vara något felaktigt. Om du behöver exakta tidsstämplar bör du alltid använda st_atime_ns , st_mtime_ns och st_ctime_ns . För bakåtkompatibilitet är returvärdet på stat() är också tillgänglig som en tuple på minst tio heltal som ger de viktigaste (och bärbara) medlemmarna i statstrukturen, i ordningen st_mode , st_ino , st_dev , st_nlink , st_uid , st_gid , st_size , st_atime , st_mtime , st_ctime . Fler artiklar kan läggas till i slutet av vissa implementeringar.

Denna funktion kan stödja att ange en filbeskrivare och inte följa symlänkar.

Standardmodulstat definierar funktioner och konstanter som är användbara för att extrahera information från en statstruktur. (I Windows är vissa objekt fyllda med dummyvärden.)

Exempel:

>>> import os>>> statinfo = os.stat('somefile.txt')>>> statinfoposix.stat_result(st_mode=33188, st_ino=7876932, st_dev=234881026,st_nlink=1, st_uid=501, st_gid=501, st_size=264, st_atime=1297230295,st_mtime=1297230027, st_ctime=1297230027)>>> statinfo.st_size264
Tillgänglighet: Unix, Windows.
  os.stat_float_times(  [  newvalue  ]  )  
Bestämma huruvida stat_result representerar tidsstämplar som flytande objekt. Om newvalue är Sann , framtida samtal till stat() returflöden, om det är Falsk , framtida samtal återlämnas. Om newvalue är utelämnad, returnera den aktuella inställningen.

För kompatibilitet med äldre Python-versioner, åtkomst stat_result som en tuple returnerar alltid heltal.

Python returnerar nu flottörvärden som standard. Program som inte fungerar korrekt med flytande punktstämplar kan använda den här funktionen för att återställa det gamla beteendet.

Upplösningen för tidsstämplarna (det vill säga minsta möjliga bråk) beror på systemet. Vissa system stöder bara andra upplösningen; på dessa system kommer fraktionen alltid att vara noll.

Det rekommenderas att denna inställning endast ändras vid programstart i __main__ modul; bibliotek bör aldrig ändra den här inställningen. Om ett program använder ett bibliotek som fungerar fel om flytande punktstämplar behandlas, bör det här programmet stänga av funktionen tills biblioteket har korrigerats.

Föråldrad sedan Python 3.3.
  os.statvfs(   path   )  
Utför en statvfs () systemanrop på den angivna sökvägen. Returvärdet är ett objekt vars attribut beskriver filsystemet på det angivna väg , och motsvarar medlemmarna i statvfs struktur, nämligen: f_bs storlek , f_frsize , f_blocks , f_bfree , f_bavail , f_files , f_ffree , f_favail , f_flag , f_namemax .

Två konstanter på modulnivå definieras för f_flag attributets bitflaggor: if ST_RDONLY är inställt är filsystemet monterat skrivskyddat och om ST_NOSUID är inställt, är semantiken för setuid / setgid-bitar inaktiverade eller stöds inte.

Ytterligare modulnivåkonstanter definieras för GNU / glibc-baserade system. Dessa är ST_NODEV (tillåta åtkomst till enhetens specialfiler), ST_NOEXEC (avvisa programkörning), ST_SYNCHRONOUS (skriv synkroniseras omedelbart), ST_MANDLOCK (tillåt obligatoriska lås på en FS), ST_WRITE (skriv på fil / katalog / symlink), ST_APPEND (endast bifogad fil), ST_IMMUTABLE (oföränderlig fil), ST_NOATIME (uppdatera inte åtkomsttider), ST_NODIRATIME (uppdatera inte katalogåtkomsttider), ST_RELATIME (uppdatera atime relativt mtime / ctime).

Denna funktion kan stödja specificering av en filbeskrivare.

Ändrad i version 3.2: ST_RDONLY och ST_NOSUID konstanter tillsattes.

Ändrad i version 3.4: ST_NODEV , ST_NOEXEC , ST_SYNCHRONOUS , ST_MANDLOCK , ST_WRITE , ST_APPEND , ST_IMMUTABLE , ST_NOATIME , ST_NODIRATIME och ST_RELATIME konstanter tillsattes. Tillgänglighet: Unix.
  os.supports_dir_fd  
TILL Uppsättning objekt som anger vilka funktioner i du modul tillåter användning av deras dir_fd parameter. Olika plattformar erbjuder olika funktioner, och ett alternativ som kan fungera på en stöds kanske inte på en annan. För konsekvensens skull, funktioner som stöder dir_fd tillåt alltid att ange parametern, men kommer att höja ett undantag om funktionaliteten inte är tillgänglig.

För att kontrollera om en viss funktion tillåter användning av dess dir_fd parameter, använd in-operatören på stöder_dir_fd . Som ett exempel avgör detta uttryck huruvida dir_fd parameter för os.stat () finns lokalt:

os.stat in os.supports_dir_fd
För närvarande dir_fd parametrar fungerar bara på Unix-plattformar; ingen av dem fungerar på Windows.
  os.supports_effective_ids  
TILL Uppsättning objekt som anger vilka funktioner i os-modulen som tillåter användning av effektiva_id parameter för os.access () . Om den lokala plattformen stöder det kommer samlingen att innehålla os.access () , annars kommer den att vara tom.

För att kontrollera om du kan använda effektiva_id parameter för os.access () , använd in-operatören på stöder_dir_fd , såhär:

os.access in os.supports_effective_ids
För närvarande effektiva_id fungerar bara på Unix-plattformar; det fungerar inte på Windows.
  os.supports_fd  
TILL Uppsättning objekt som anger vilka funktioner i du modultillstånd specificera deras väg som en öppen filbeskrivare. Olika plattformar erbjuder olika funktioner, och ett alternativ som kan fungera på en stöds kanske inte på en annan. För konsekvensens skull, funktioner som stöder fd tillåt alltid att ange parametern, men kommer att höja ett undantag om funktionaliteten inte är tillgänglig.

För att kontrollera om en viss funktion tillåter att ange en öppen filbeskrivare för dess sökparameter, använd in-operatorn på stöder_fd . Som ett exempel avgör detta uttryck huruvida os.chdir () accepterar öppna filbeskrivare när de anropas på din lokala plattform:

os.chdir in os.supports_fd
  os.supports_follow_symlinks  
TILL Uppsättning objekt som anger vilka funktioner i du modul tillåter användning av deras följ_symlänkar parameter. Olika plattformar erbjuder olika funktioner, och ett alternativ som kan fungera på en stöds kanske inte på en annan. För konsekvensens skull, funktioner som stöder följ_symlänkar tillåt alltid att ange parametern, men kommer att höja ett undantag om funktionaliteten inte är tillgänglig.

För att kontrollera om en viss funktion tillåter användning av dess följ_symlänkar använda parametern i operatör på supports_follow_symlinks . Som ett exempel avgör detta uttryck huruvida följ_symlänkar parameter för os.stat () finns lokalt:

os.stat in os.supports_follow_symlinks
  os.symlink(   source   ,   link_name   ,   target_is_directory   =False, *,   dir_fd   =None)  
Skapa en symbolisk länk som pekar på källan länknamn .

På Windows representerar en symlink antingen en fil eller en katalog och ändras inte dynamiskt till målet. Om målet är närvarande skapas typen av symlink för att matcha. I annat fall skapas symlink som en katalog om target_is_directory är Sann eller en filsymlink (standard) annars. På plattformar utan fönster, target_is_directory ignoreras.

Symboliskt länkstöd introducerades i Windows 6.0 (Vista). symlink () kommer att höja en NotImplementedError på Windows-versioner tidigare än 6.0.

Denna funktion kan stödja sökvägar i förhållande till katalogbeskrivare.

Notera: I Windows är SeCreateSymbolicLinkPrivilege krävs för att framgångsrikt skapa symlänkar. Denna behörighet beviljas vanligtvis inte till vanliga användare men är tillgänglig för konton som kan eskalera behörigheter till administratörsnivå. Antingen att få behörigheten eller att köra din applikation som administratör är sätt att framgångsrikt skapa symlänkar.

OSError höjs när funktionen anropas av en privilegierad användare.

Tillgänglighet: Unix, Windows.
  os.sync()  
Tvinga skrivning av allt till disk.

Tillgänglighet: Unix.
  os.truncate(   path   ,   length   )  
Avkorta filen som motsvarar väg , så att det är som mest längd byte i storlek.

Denna funktion kan stödja specificering av en filbeskrivare.

Tillgänglighet: Unix.
  os.unlink(   path   , *,   dir_fd   =None)  
Ta bort (ta bort) filvägen. Denna funktion är identisk med avlägsna() ; unlink-namnet är dess traditionella Unix-namn. Se dokumentationen för avlägsna() för ytterligare information.

Tillgänglighet: Unix, Windows.
  os.utime(   path   ,   times   =None, *,   ns   =None,   dir_fd   =None,   follow_symlinks   =True)  
Ställ in åtkomst och modifierade tider för filen som anges av väg .

utime () tar två valfria parametrar, gånger och ns . Dessa anger de inställda tiderna på sökvägen och används på följande sätt:

  • Om ns är inte Ingen , det måste vara en tvåfaldig form (atime_ns, mtime_ns) där varje medlem är en int uttrycker nanosekunder.
  • Om gånger är inte Ingen , det måste vara en tvåfaldig form (atime, mtime) där varje medlem är en int eller flyta uttrycka sekunder.
  • Om gånger och ns är båda Ingen , detta motsvarar att specificera ns = (atime_ns, mtime_ns) där båda tiderna är aktuell tid.
Det är ett fel att ange tuplar för båda gånger och ns .

Huruvida en katalog kan ges för sökväg beror på om operativsystemet implementerar kataloger som filer (till exempel Windows inte). Observera att de exakta tiderna som du ställer in här kanske inte returneras av en efterföljande stat() beroende på vilken upplösning ditt operativsystem registrerar åtkomst- och ändringstider med; ser stat() . Det bästa sättet att bevara exakta tider är att använda st_atime_ns och st_mtime_ns fält från os.stat () resultatobjekt med ns parameter till utime .

Denna funktion kan stödja specificering av en filbeskrivare, sökvägar i förhållande till katalogbeskrivare och inte efter symlänkar.

Tillgänglighet: Unix, Windows.
  os.walk(   top   ,   topdown   =True,   onerror   =None,   followlinks   =False)  
Skapa filnamnen i ett katalogträd genom att gå i trädet antingen uppifrån eller nedåt. För varje katalog i trädet rotad på katalogtoppen (inklusive själva toppen) ger den en 3-tupel (dirpath, dirnames, filnamn) .

dirpath är en sträng, sökvägen till katalogen. De dirnames är en lista med namnen på underkatalogerna i dirpath (exklusive '.' och '..'). De filnamn är en lista med namnen på icke-katalogfilerna i dirpath . Observera att namnen i listorna inte innehåller några sökkomponenter. För att få en fullständig sökväg (som börjar med början) till en fil eller katalog i dirpath , gör os.path.join (dirpath, namn) .

Om valfritt argument topdown är Sann eller inte anges genereras trippel för en katalog före tripplarna för någon av dess underkataloger (kataloger genereras uppifrån och ner). Om topdown är Falsk , genereras trippel för en katalog efter tripplarna för alla dess underkataloger (kataloger genereras nedifrån och upp). Oavsett värdet på topdown, listan över underkataloger hämtas innan katalogerna och dess underkataloger genereras.

När topdown är Sann kan den som ringer ändra dirnames-listan på plats (kanske med del- eller skivtilldelning) och gå() återställs bara till underkatalogerna vars namn finns kvar i dirnames ; detta kan användas för att beskära sökningen, införa en specifik besöksordning eller till och med för att informera gå() om kataloger som den som ringer skapar eller byter namn på innan den återupptas gå() om igen. Modifierar dirnames när topdown är Falsk är ineffektivt, eftersom i nedifrån och upp-läge genereras katalogerna i dirnames innan dirpath själv genereras.

Som standard är fel från listdir () samtal ignoreras. Om valfritt argument onerror anges ska det vara en funktion; det kommer att kallas med ett argument, en OSError-instans. Det kan rapportera felet för att fortsätta med vandringen eller höja undantaget för att avbryta vandringen. Observera att filnamnet är tillgängligt som filnamnattribut för undantagsobjektet.

Som standard gå() kommer inte att gå ner till symboliska länkar som löser sig till kataloger. Uppsättning följlänkar till Sann att besöka kataloger som symlänkar pekar på på system som stöder dem.

Notera: Var medveten om den inställningen följlänkar till Sann kan leda till oändlig rekursion om en länk pekar på en överordnad katalog. gå() håller inte reda på de kataloger den besökt redan.

Notera: Om du skickar ett relativt sökväg ska du inte ändra den aktuella arbetskatalogen mellan återupptagningarna av gå() . gå() ändrar aldrig den aktuella katalogen och antar att den som ringer inte gör det heller.

Det här exemplet visar antalet byte som tagits av icke-katalogfiler i varje katalog under startkatalogen, förutom att det inte ser ut under någon CVS-underkatalog:

import osfrom os.path import join, getsizefor root, dirs, files in os.walk('python/Lib/email'): print(root, 'consumes', end=' ') print(sum(getsize(join(root, name)) for name in files), end=' ') print('bytes in', len(files), 'non-directory files') if 'CVS' in dirs: dirs.remove('CVS') # don't visit CVS directories
I nästa exempel är det viktigt att gå nerifrån och upp på trädet: rmdir () tillåter inte att radera en katalog innan katalogen är tom:

# Delete everything reachable from the directory named in 'top',# assuming there are no symbolic links.# CAUTION: This is dangerous! For example, if top == '/', it# could delete all your disk files.import osfor root, dirs, files in os.walk(top, topdown=False): for name in files: os.remove(os.path.join(root, name)) for name in dirs: os.rmdir(os.path.join(root, name))
  os.fwalk(   top   ='.',   topdown   =True,   onerror   =None, *,   follow_symlinks   =False,   dir_fd   =None)  
Detta beter sig precis som gå() , förutom att det ger en 4-tupel (dirpath, dirnames, filenames, dirfd) , och det stöder dir_fd .

dirpath , dirnames och filnamn är identiska med gå() output och dirfd är en filbeskrivare som hänvisar till katalogen dirpath .

Denna funktion stöder alltid sökvägar i förhållande till katalogbeskrivare och inte följande symlänkar. Observera dock att till skillnad från andra funktioner fwalk () standardvärde för följ_symlänkar är Falsk .

Notera: Eftersom fwalk () ger filbeskrivare, de är bara giltiga fram till nästa iterationssteg, så du bör duplicera dem (t.ex. med dup () ) om du vill ha dem längre.

Det här exemplet visar antalet byte som tagits av icke-katalogfiler i varje katalog under startkatalogen, förutom att det inte ser ut under någon CVS-underkatalog:

import osfor root, dirs, files, rootfd in os.fwalk('python/Lib/email'): print(root, 'consumes', end='') print(sum([os.stat(name, dir_fd=rootfd).st_size for name in files]), end='') print('bytes in', len(files), 'non-directory files') if 'CVS' in dirs: dirs.remove('CVS') # don't visit CVS directories
I nästa exempel är det viktigt att gå nerifrån och upp på trädet: rmdir () tillåter inte att radera en katalog innan katalogen är tom:

# Delete everything reachable from the directory named in 'top',# assuming there are no symbolic links.# CAUTION: This is dangerous! For example, if top == '/', it# could delete all your disk files.import osfor root, dirs, files, rootfd in os.fwalk(top, topdown=False): for name in files: os.unlink(name, dir_fd=rootfd) for name in dirs: os.rmdir(name, dir_fd=rootfd)
Tillgänglighet: Unix.

Linux utökade attribut

Dessa funktioner är alla tillgängliga endast på Linux.

  os.getxattr(   path   ,   attribute   , *,   follow_symlinks   =True)  
Returnera värdet för det utökade filsystemattributet attribut för väg . De attribut kan vara byte eller sid . Om den är sid , det är kodat med filsystemkodningen.

Denna funktion kan stödja att ange en filbeskrivare och inte följa symlänkar.
  os.listxattr(   path   =None, *,   follow_symlinks   =True)  
Returnera en lista över de utökade filsystemattributen väg . Attributen i listan representeras som strängar avkodade med filsystemkodningen. Om väg är Ingen , listxattr () kommer att undersöka den aktuella katalogen.

Denna funktion kan stödja att ange en filbeskrivare och inte följa symlänkar.
  os.removexattr(   path   ,   attribute   , *,   follow_symlinks   =True)  
Tar bort attributattributet för utökat filsystem från väg . De attribut borde vara byte eller sid . Om det är en sträng kodas den med filsystemkodningen.

Denna funktion kan stödja att ange en filbeskrivare och inte följa symlänkar.
  os.setxattr(   path   ,   attribute   ,   value   ,   flags   =0, *,   follow_symlinks   =True)  
Ställ in det utökade filsystemattributet attributväg till värde . De attribut måste vara en byte eller sid utan inbäddade NUL. Om det är en sid , det är kodat med filsystemkodningen. De flaggor kanske XATTR_REPLACE eller XATTR_CREATE . Om XATTR_REPLACE ges och attributet inte finns, EEXISTER kommer att höjas. Om XATTR_CREATE ges och attributet redan finns kommer attributet inte att skapas och ENODATA kommer att höjas.

Denna funktion kan stödja att ange en filbeskrivare och inte följa symlänkar.

Notera: Ett fel i Linux-kärnversioner mindre än 2.6.39 orsakade att flaggargumentet ignorerades i vissa filsystem.
  os.XATTR_SIZE_MAX  
Den maximala storleken som värdet på ett utökat attribut kan vara. För närvarande är detta 64 KiB på Linux.
  os.XATTR_CREATE  
Detta är ett möjligt värde för flaggargumentet i setxattr () . Det anger att åtgärden måste skapa ett attribut.
  os.XATTR_REPLACE  
Detta är ett möjligt värde för flaggargumentet i setxattr () . Det anger att åtgärden måste ersätta ett befintligt attribut.

Processhantering

Dessa funktioner kan användas för att skapa och hantera processer.

De olika exec * funktioner tar en lista med argument för det nya programmet som laddas in i processen. I båda fallen skickas det första av dessa argument till det nya programmet som sitt eget namn snarare än som ett argument som en användare kan ha skrivit på en kommandorad. För C-programmeraren är det här argv [0] skickas till ett program huvud () . Till exempel, os.execv ('/ bin / echo', ['foo', 'bar']) skrivs bara ut bar på standardutgång; foo verkar ignoreras.

  os.abort()  
Skapa en SIGABRT signal till den aktuella processen. På Unix är standardbeteendet att producera en core dump; i Windows returnerar processen omedelbart en utgångskod på 3. Var medveten om att anrop till denna funktion inte kommer att ringa Python-signalhanteraren som är registrerad för SIGABRT med signal.signal () .

Tillgänglighet: Unix, Windows.
  os.execl(   path   ,   arg0   ,   arg1   , ...)   os.execle(   path   ,   arg0   ,   arg1   , ...,   env   )   os.execlp(   file   ,   arg0   ,   arg1   , ...)   os.execlpe(   file   ,   arg0   ,   arg1   , ...,   env   )   os.execv(   path   ,   args   )   os.execve(   path   ,   args   ,   env   )   os.execvp(   file   ,   args   )   os.execvpe(   file   ,   args   ,   env   )  
Dessa funktioner kör alla ett nytt program som ersätter den aktuella processen; de återvänder inte. På Unix laddas den nya körbara filen i den aktuella processen och kommer att ha samma process-id som den som ringer. Fel rapporteras som undantag från OSError.

Den nuvarande processen ersätts omedelbart. Öppna filobjekt och deskriptorer spolas inte, så om det kan finnas data buffrat på dessa öppna filer, bör du spola dem med sys.stdout.flush () eller os.fsync () innan du ringer till en exec * fungera.

L- och V-varianterna av exec * funktioner skiljer sig åt i hur kommandoradsargument skickas. L-varianterna är kanske de enklaste att arbeta med om antalet parametrar fixas när koden skrivs; de enskilda parametrarna blir ytterligare parametrar till execl * () funktioner. V-varianterna är bra när antalet parametrar är variabelt, med argumenten skickas i en lista eller tuple som args parameter. I båda fallen bör argumenten till barnprocessen börja med namnet på kommandot som körs, men detta verkställs inte.

Varianterna som inkluderar en p nära slutet ( execlp () , execlpe () , execvp () och execvpe () ) kommer att använda VÄG miljövariabel för att hitta programfilen. När miljön byts ut (med hjälp av en exec * e varianter, som diskuteras i nästa stycke) används den nya miljön som källa till VÄG variabel. De andra varianterna, execl () , execle () , execv () och exekvera () , kommer inte att använda VÄG variabel för att lokalisera den körbara; väg måste innehålla en lämplig absolut eller relativ väg.

För execle () , execlpe () , exekvera () och execvpe () (notera att dessa alla slutar på e), env parametern måste vara en mappning som används för att definiera miljövariablerna för den nya processen (dessa används istället för den aktuella processmiljön); funktionerna execl () , execlp () , execv () och execvp () alla får den nya processen att ärva miljön i den aktuella processen.

För exekvera () på vissa plattformar kan sökvägen också anges som en öppen filbeskrivare. Denna funktion stöds kanske inte på din plattform; du kan kontrollera om den är tillgänglig med os.supports_fd . Om det inte är tillgängligt kommer det att leda till en NotImplementedError genom att använda den. Tillgänglighet: Unix, Windows.
  os._exit(   n   )  
Avsluta processen med status n , utan att ringa saneringshanterare, spola stdio-buffertar etc.

Tillgänglighet: Unix, Windows.

Notera: Det vanliga sättet att lämna är sys.exit (n) . _utgång() ska normalt endast användas i barnprocessen efter en gaffel() .

Följande utgångskoder definieras och kan användas med _utgång() , även om de inte krävs. Dessa används vanligtvis för systemprogram skrivna i Python, till exempel en e-postservers externa kommandoprogram.

hur man kontrollerar vilken version av windows jag har
Notera



Vissa av dessa kanske inte är tillgängliga på alla Unix-plattformar, eftersom det finns viss variation. Dessa konstanter definieras där de definieras av den underliggande plattformen.

  os.EX_OK  
Utgångskod som innebär att inget fel inträffade.

Tillgänglighet: Unix.
  os.EX_USAGE  
Utgångskod som betyder att kommandot användes felaktigt, till exempel när fel antal argument ges.

Tillgänglighet: Unix.
  os.EX_DATAERR  
Utgångskod som betyder att ingångsdata var felaktig.

Tillgänglighet: Unix.
  os.EX_NOINPUT  
Utgångskod som betyder att en inmatningsfil inte fanns eller inte var läsbar.

Tillgänglighet: Unix.
  os.EX_NOUSER  
Utgångskod som betyder att en angiven användare inte existerade.

Tillgänglighet: Unix.
  os.EX_NOHOST  
Utgångskod som betyder att en angiven värd inte existerade.

Tillgänglighet: Unix.
  os.EX_UNAVAILABLE  
Utgångskod som innebär att en nödvändig tjänst inte är tillgänglig.

Tillgänglighet: Unix.
  os.EX_SOFTWARE  
Utgångskod som innebär att ett internt programvarufel upptäcktes.

Tillgänglighet: Unix.
  os.EX_OSERR  
Utgångskod som innebär att ett operativsystemfel upptäcktes, till exempel oförmågan att gaffla eller skapa ett rör.

Tillgänglighet: Unix.
  os.EX_OSFILE  
Utgångskod som innebär att någon systemfil inte fanns, inte kunde öppnas eller hade någon annan typ av fel.

Tillgänglighet: Unix.
  os.EX_CANTCREAT  
Avslutskod som innebär att en användarspecifik utdatafil inte kunde skapas.

Tillgänglighet: Unix.
  os.EX_IOERR  
Avslutskod som betyder att ett fel inträffade när jag gjorde I / O på någon fil.

Tillgänglighet: Unix.
  os.EX_TEMPFAIL  
Utgångskod som betyder att ett tillfälligt fel inträffade. Detta indikerar något som inte riktigt kan vara ett fel, till exempel en nätverksanslutning som inte kunde upprättas under en omprövning.

Tillgänglighet: Unix.
  os.EX_PROTOCOL  
Utgångskod som betyder att ett protokollutbyte var olagligt, ogiltigt eller inte förstod.

Tillgänglighet: Unix.
  os.EX_NOPERM  
Utgångskod som betyder att det inte fanns tillräckliga behörigheter för att utföra åtgärden (men inte avsedd för filsystemproblem).

Tillgänglighet: Unix.
  os.EX_CONFIG  
Utgångskod som betyder att någon form av konfigurationsfel inträffade.

Tillgänglighet: Unix.
  os.EX_NOTFOUND  
Utgångskod som betyder att något som en post hittades hittades inte.

Tillgänglighet: Unix.
  os.fork()  
Gaffel en barnprocess. Lämna tillbaka 0 i barnet och barnets process-id i föräldern. Om ett fel inträffar tas OSError upp.

Observera att vissa plattformar inklusive FreeBSD<= 6.3 and Cygwin have known issues when using gaffel() från en tråd.

Varning:

Ser ssl för applikationer som använder SSL-modulen med gaffel() .

Tillgänglighet: Unix.
  os.forkpty()  
Gaffla en barnprocess med en ny pseudoterminal som barnets kontrollterminal. Returnera ett par (pid, fd) , var pid är 0 i barnet, det nya barns process-ID i föräldern, och fd är filbeskrivaren för masteränden på pseudoterminalen. För en mer bärbar strategi, använd pty-modulen. Om ett fel inträffar tas OSError upp.

Tillgänglighet: några smaker av Unix.
  os.kill(   pid   ,   sig   )  
Skicka signal sig till processen pid . Konstanter för de specifika signalerna som är tillgängliga på värdplattformen definieras i signalmodulen.

Windows: signal.CTRL_C_EVENT och signal.CTRL_BREAK_EVENT signaler är speciella signaler som endast kan skickas till konsolprocesser som delar ett gemensamt konsolfönster, t.ex. vissa delprocesser. Något annat värde för sig kommer att leda till att processen dödas villkorslöst av Avsluta process API och utgångskoden kommer att ställas in på sig . Windows-versionen av döda() tar dessutom processhandtag för att dödas.

Se även signal.pthread_kill () .
  os.killpg(   pgid   ,   sig   )  
Skicka signalen sig till processgruppen pgid .

Tillgänglighet: Unix.
  os.nice(   increment   )  
Lägg till steg till processens trevlighet. Återlämna den nya trevligheten.

Tillgänglighet: Unix.
  os.plock(   op   )  
Lås programsegment i minnet. Värdet av (definierad i ) bestämmer vilka segment som är låsta.

Tillgänglighet: Unix.
  os.popen(...)  
Kör barnprocesser, returnera öppnade rör för kommunikation. Dessa funktioner beskrivs i avsnittet Skapa filobjekt .
  os.spawnl(   mode   ,   path   , ...)   os.spawnle(   mode   ,   path   , ...,   env   )   os.spawnlp(   mode   ,   file   , ...)   os.spawnlpe(   mode   ,   file   , ...,   env   )   os.spawnv(   mode   ,   path   ,   args   )   os.spawnve(   mode   ,   path   ,   args   ,   env   )   os.spawnvp(   mode   ,   file   ,   args   )   os.spawnvpe(   mode   ,   file   ,   args   ,   env   )  
Kör programvägen i en ny process.

Om läge är P_NOWAIT , den här funktionen returnerar process-id för den nya processen; om läget är P_WAIT , returnerar processens utgångskod om den avslutas normalt, eller -signal , var signal är signalen som dödade processen. På Windows kommer process-id faktiskt att vara processhandtaget, så det kan användas med vänteläge () fungera.

L- och V-varianterna av ge upphov till* funktioner skiljer sig åt i hur kommandoradsargument skickas. L-varianterna är kanske de enklaste att arbeta med om antalet parametrar fixas när koden skrivs; de enskilda parametrarna blir ytterligare parametrar till spawnl * () funktioner. V-varianterna är bra när antalet parametrar är variabelt, med argumenten skickas i en lista eller tuple som args-parametern. I båda fallen måste argumenten för barnprocessen börja med namnet på kommandot som körs.

Varianterna som inkluderar en andra p nära slutet ( spawnlp () , spawnlpe () , spawnvp () och spawnvpe () ) kommer att använda VÄG miljövariabel för att hitta programfilen. När miljön byts ut (med hjälp av en leka * e varianter, som diskuteras i nästa stycke) används den nya miljön som källa till VÄG variabel. De andra varianterna, spawnl () , spawnle () , spawnv () och spawnve () , kommer inte att använda VÄG variabel för att lokalisera den körbara; sökvägen måste innehålla en lämplig absolut eller relativ sökväg.

För spawnle () , spawnlpe () , spawnve () och spawnvpe () (notera att dessa alla slutar på e), env parametern måste vara en kartläggning som används för att definiera miljövariablerna för den nya processen (de används istället för den aktuella processmiljön); funktionerna spawnl () , spawnlp () , spawnv () och spawnvp () alla får den nya processen att ärva miljön i den aktuella processen. Observera att nycklar och värden i env ordlistan måste vara strängar; ogiltiga nycklar eller värden kommer att få funktionen att misslyckas, med ett returvärde på 127.

Som ett exempel kallar följande till spawnlp () och spawnvpe () är likvärdiga:

import osos.spawnlp(os.P_WAIT, 'cp', 'cp', 'index.html', '/dev/null')L = ['cp', 'index.html', '/dev/null']os.spawnvpe(os.P_WAIT, 'cp', L, os.environ)
Tillgänglighet: Unix, Windows. spawnlp () , spawnlpe () , spawnvp () och spawnvpe () är inte tillgängliga på Windows. spawnle () och spawnve () är inte trådsäkra på Windows; Vi rekommenderar att du använder delprocessmodulen istället.
  os.P_NOWAIT   os.P_NOWAITO  
Möjliga värden för lägesparametern till ge upphov till* familj av funktioner. Om något av dessa värden anges, kommer ge upphov till*() funktioner kommer att återkomma så snart den nya processen har skapats, med process-id som returvärde.



Tillgänglighet: Unix, Windows.
  os.P_WAIT  
Möjligt värde för lägesparametern till ge upphov till* familj av funktioner. Om detta ges som läge, kommer ge upphov till*() funktioner kommer inte att återvända förrän den nya processen har körts till slut och kommer att returnera utgångskoden för processen som körningen har lyckats, eller -signal om en signal dödar processen.

Tillgänglighet: Unix, Windows.
  os.P_DETACHos.P_OVERLAY  
Möjliga värden för lägesparametern för funktionsfamiljen *. Dessa är mindre bärbara än de som anges ovan. P_DETACH liknar P_NOWAIT , men den nya processen är borttagen från konsolen för anropsprocessen. Om P_OVERLAY används kommer den nuvarande processen att ersättas. de ge upphov till* funktionen återgår inte.

Tillgänglighet: Windows.
  os.startfile(   path  [  ,   operation  ]  )  
Starta en fil med tillhörande applikation.

När operation inte är specificerad eller 'öppen' fungerar det som att dubbelklicka på filen i Windows Explorer eller ge filnamnet som ett argument till startkommandot från det interaktiva kommandoskalet: filen öppnas med vilken applikation som helst (om någon ) dess förlängning är associerad.

När en annan åtgärd ges måste det vara ett kommandoverb som anger vad som ska göras med filen. Vanliga verb som dokumenterats av Microsoft är 'tryck' och 'redigera' (för att användas på filer) samt 'utforska' och 'hitta' (som ska användas i kataloger).

startfile() återkommer så snart den tillhörande applikationen startas. Det finns inget alternativ att vänta på att programmet stängs och inget sätt att hämta programmets utgångsstatus. Sökparametern är relativt den aktuella katalogen. Om du vill använda en absolut sökväg, se till att det första tecknet inte är snedstreck (' / '); den underliggande Win32 ShellExecute () fungerar inte om den är. Använd os.path.normpath () funktion för att säkerställa att sökvägen är korrekt kodad för Win32.

Tillgänglighet: Windows.
  os.system(   command   )  
Utför kommandot (en sträng) i en subshell. Detta implementeras genom att anropa Standard C-funktionen systemet() och har samma begränsningar. Ändras till sys.stdin etc. återspeglas inte i det körda kommandot. Om kommandot genererar någon utdata skickas den till tolkens standardutmatningsström.

På Unix är returvärdet utgångsstatus för processen kodad i det format som anges för vänta() . Observera att POSIX inte anger betydelsen av returvärdet för C systemet() funktion, så returvärdet för Python-funktionen är systemberoende.

I Windows är returvärdet det som returneras av systemskalet efter att ha kört kommandot. Skalet ges av Windows-miljövariabeln COMSPEC: det är vanligtvis cmd.exe , som returnerar kommandokörningens utgångsstatus; på system som använder ett icke-inbyggt skal, se din skaldokumentation.

Delprocessmodulen ger kraftfullare möjligheter för att leka nya processer och hämta deras resultat; att använda den modulen är att föredra framför att använda den här funktionen. Se ersätta äldre funktioner med underprocess Modulavsnitt i underprocessdokumentationen för några användbara recept.

Tillgänglighet: Unix, Windows.
  os.times()  
Returnerar de aktuella globala procestiderna. Returvärdet är ett objekt med fem attribut:

  • användare - användartid
  • systemet - system tid
  • barnanvändare - användartid för alla barnprocesser
  • barnsystem - systemtid för alla barnprocesser
  • förflutit - förflutit i realtid sedan en fast punkt tidigare
För bakåtkompatibilitet fungerar detta objekt också som en fem-tupel som innehåller användare, system, barn_användare, barn_system och har gått i den ordningen.

Se Unix manualsida gånger () eller motsvarande Windows Platform API-dokumentation. På Windows är endast användare och system kända; de andra attributen är noll.

Tillgänglighet: Unix, Windows.
  os.wait()  
Vänta tills en barnprocess är klar och returnera en tupel som innehåller dess pid- och utgångsstatusindikering: ett 16-bitarsnummer, vars låga byte är signalnumret som dödade processen och vars höga byte är utgångsstatus (om signalen siffran är noll); den höga biten av den låga byten ställs in om en kärnfil producerades.

Tillgänglighet: Unix.
  os.waitid(   idtype   ,   id   ,   options   )  
Vänta tills en eller flera underordnade processer har slutförts. Idtypen kan vara P_PID , P_PGID eller BÅRTÄCKE . id anger pid att vänta på. De alternativ är konstruerad från ORING av en eller flera av WEXITED , WSTOPPAD eller WCONTINUED och kan dessutom beställas med WNOHANG eller WNOWAIT . Returvärdet är ett objekt som representerar data som finns i signinfo_t struktur, nämligen: si_pid , si_uid , ja_tecken , si_status , si_code eller Ingen om WNOHANG är specificerad och det finns inga barn i väntetillstånd.

Tillgänglighet: Unix.
  os.P_PIDos.P_PGIDos.P_ALL  
Det här är de möjliga värdena för idtyp i waitid () . De påverkar hur id tolkas.

Tillgänglighet: Unix.
  os.WEXITEDos.WSTOPPEDos.WNOWAIT  
Flaggor som kan användas i alternativ i waitid () som anger vilken barnsignal du ska vänta på.

Tillgänglighet: Unix.
  os.CLD_EXITEDos.CLD_DUMPEDos.CLD_TRAPPEDos.CLD_CONTINUED  
Det här är de möjliga värdena för si_code i resultatet returneras av waitid () .

Tillgänglighet: Unix.
  os.waitpid(   pid   ,   options   )  
Detaljerna för denna funktion skiljer sig åt på Unix och Windows.

På Unix: Vänta på att en barnprocess är klar med process-id pid , och returnera en tupel som innehåller dess process-ID och statusindikering för utgång (kodad som för vänta() ). Semantiken för samtalet påverkas av värdet på heltalalternativen, vilket bör vara 0 för normal drift.

Om pid är större än 0 , vänteläge () begär statusinformation för den specifika processen. Om pid är 0 , begäran gäller status för alla barn i processgruppen för den aktuella processen. Om pid är -1 , avser begäran alla barn i den aktuella processen. Om pid är mindre än -1 , status begärs för alla processer i processgruppen -pid (det absoluta värdet av pid ).

En OSError höjs med värdet av errno när syscall returnerar -1 .

På Windows: Vänta på att en process har slutförts av processhandtaget pid , och returnera en tuple som innehåller pid , och dess utgångsstatus förskjuts åt vänster med 8 bitar (skiftning gör det enklare att använda funktionen på flera plattformar). A pid mindre än eller lika med 0 har ingen speciell betydelse för Windows och ger ett undantag. Värdet på alternativ för heltal har ingen effekt. De pid kan referera till vilken process som helst som är känd, inte nödvändigtvis en barnprocess. De ge upphov till* funktioner som kallas med P_NOWAIT returnera lämpliga processhandtag.
  os.wait3(   options   )  
Liknande vänteläge () , förutom att inget process-ID-argument ges och en 3-elements tupel som innehåller barnets process-id, utgångsstatusindikering och resursanvändningsinformation returneras. Hänvisa till resource.getrusage () för information om resursanvändningsinformation. De alternativ argumentet är detsamma som det vänteläge () och wait4 () .

Tillgänglighet: Unix.
  os.wait4(   pid   ,   options   )  
Liknande vänteläge () , förutom en tre-elements tupel, som innehåller barnets process-ID, statusindikering och resursanvändningsinformation returneras. Hänvisa till resource.getrusage () för information om resursanvändningsinformation. Argumenten till wait4 () är samma som de som tillhandahålls vänteläge () .

Tillgänglighet: Unix.
  os.WNOHANG  
Alternativet för vänteläge () att återvända omedelbart om ingen status för barnprocessen är tillgänglig omedelbart. Funktionen återgår (0, 0) I detta fall.

Tillgänglighet: Unix.
  os.WCONTINUED  
Detta alternativ gör att underordnade processer rapporteras om de har fortsatt från ett jobbkontrollstopp sedan deras status senast rapporterades.

Tillgänglighet: vissa Unix-system.
  os.WUNTRACED  
Detta alternativ gör att barnprocesser rapporteras om de har stoppats men deras nuvarande tillstånd har inte rapporterats sedan de stoppades.

Tillgänglighet: Unix.

Följande funktioner tar en processstatuskod som returneras av systemet() , vänta() , eller vänteläge () som en parameter. De kan användas för att bestämma dispositionen för en process.

  os.WCOREDUMP(   status   )  
Lämna tillbaka Sann om en kärndump genererades för processen, annars returnera Falsk .

Tillgänglighet: Unix.
  os.WIFCONTINUED(   status   )  
Lämna tillbaka Sann om processen har fortsatt från ett jobbkontrollstopp, annars returnera Falsk .

Tillgänglighet: Unix.
  os.WIFSTOPPED(   status   )  
Lämna tillbaka Sann om processen har stoppats, återvänd annars Falsk .

Tillgänglighet: Unix.
  os.WIFSIGNALED(   status   )  
Lämna tillbaka Sann om processen avslutas på grund av en signal, annars returnera Falsk .

Tillgänglighet: Unix.
  os.WIFEXITED(   status   )  
Lämna tillbaka Sann om processen avslutades med utgång() systemanrop, annars returnera Falsk .

Tillgänglighet: Unix.
  os.WEXITSTATUS(   status   )  
Om WIFEXITED (status) är sant, returnera heltalsparametern till utgång() systemanrop. Annars är returvärdet meningslöst.

Tillgänglighet: Unix.
  os.WSTOPSIG(   status   )  
Returnera signalen som fick processen att stoppa.

Tillgänglighet: Unix.
  os.WTERMSIG(   status   )  
Returnera signalen som fick processen att avslutas.

Tillgänglighet: Unix.

Gränssnitt till schemaläggaren

Dessa funktioner styr hur en process tilldelas CPU-tid av operativsystemet. De är endast tillgängliga på vissa Unix-plattformar. För mer detaljerad information, kontakta dina Unix-manpages.

Följande schemaläggningsprinciper exponeras om de stöds av operativsystemet.

  os.SCHED_OTHER  
Standardplaneringsplanen.
  os.SCHED_BATCH  
Schemaläggningsprincip för CPU-intensiva processer som försöker bevara interaktivitet på resten av datorn.
  os.SCHED_IDLE  
Schemaläggningspolicy för bakgrundsuppgifter med extremt låg prioritet.
  os.SCHED_SPORADIC  
Schemaläggningspolicy för sporadiska serverprogram.
  os.SCHED_FIFO  
En schemaläggningspolicy för första in första ut.
  os.SCHED_RR  
En schemaläggningspolicy.
  os.SCHED_RESET_ON_FORK  
Den här flaggan kan ORDas med någon annan schemaläggningspolicy. När en process med den här flagguppsättningen gafflar återställs barnets schemaläggningspolicy och prioritet till standard.
  class   os.sched_param(   sched_priority   )  
Den här klassen representerar inställbara schemaläggningsparametrar som används i sched_setparam (), sched_setscheduler () och sched_getparam (). Det är oföränderligt. För närvarande finns det bara en möjlig parameter: sched_priority: Schemaläggningsprioriteten för en schemaläggningspolicy.
  os.sched_get_priority_min(   policy   )  
Få det lägsta prioritetsvärdet för politik . De politik är en av schemaläggningskonstanterna ovan.
  os.sched_get_priority_max(   policy   )  
Få det maximala prioritetsvärdet för politik . De politik är en av schemaläggningskonstanterna ovan.
  os.sched_setscheduler(   pid   ,   policy   ,   param   )  
Ställ in schemaläggningspolicyn för processen med PID pid . TILL pid av 0 betyder anropsprocessen. Policyn är en av schemaläggningskonstanterna ovan. De sluta är en sched_param-instans.
  os.sched_getscheduler(   pid   )  
Returnera schemaläggningspolicyn för processen med PID pid . TILL pid av 0 betyder anropsprocessen. Resultatet är en av schemaläggningskonstanterna ovan.
  os.sched_setparam(   pid   ,   param   )  
Ställ in schemaläggningsparametrar för processen med PID pid . TILL pid av 0 betyder anropsprocessen. De sluta är en sched_param exempel.
  os.sched_getparam(   pid   )  
Returnera schemaläggningsparametrarna som en sched_param exempel för processen med PID pid . TILL pid av 0 betyder anropsprocessen.
  os.sched_rr_get_interval(   pid   )  
Återlämna kvantiteten i några sekunder för processen med PID pid . Ett pid av 0 betyder anropsprocessen.
  os.sched_yield()  
Avstå frivilligt från CPU: n.
  os.sched_setaffinity(   pid   ,   mask   )  
Begränsa processen med PID pid (eller den aktuella processen om noll) till en uppsättning processorer. mask är en iterabel av heltal som representerar den uppsättning processorer som processen ska begränsas till.
  os.sched_getaffinity(   pid   )  
Returnera uppsättningen CPU: er processen med PID pid (eller den nuvarande processen om noll) är begränsad till.

Diverse systeminformation

  os.confstr(   name   )  
Returnera strängvärderade systemkonfigurationsvärden. De namn anger konfigurationsvärdet som ska hämtas; det kan vara en sträng som är namnet på ett definierat systemvärde; dessa namn specificeras i ett antal standarder (POSIX, Unix 95, Unix 98 och andra). Vissa plattformar definierar också ytterligare namn. Namnen som är kända för värdoperativsystemet ges som nycklarna till ordlistan confstr_names. För konfigurationsvariabler som inte ingår i den mappningen accepteras också att skicka ett heltal för namn.

Om konfigurationsvärdet som anges med namnet inte definieras, Ingen returneras.

Om namn är en sträng och är inte känd, ValueError höjs. Om ett specifikt namnvärde inte stöds av värdsystemet, även om det ingår i confstr_names , ett OSError höjs med errno.EINVAL för felnumret.

Tillgänglighet: Unix.
  os.confstr_names  
Namn på ordbokskartläggning accepterade av confstr () till de heltalsvärden som definierats för dessa namn av värdoperativsystemet. Detta kan användas för att bestämma den uppsättning namn som är kända för systemet.

Tillgänglighet: Unix.
  os.cpu_count()  
Returnera antalet processorer i systemet. Returnerar Ingen om det inte är bestämt.
  os.getloadavg()  
Returnera antalet processer i systemkörens kö i genomsnitt under de senaste 1, 5 och 15 minuterna eller höjer OSError om belastningsgenomsnittet inte var tillgängligt.

Tillgänglighet: Unix.
  os.sysconf(   name   )  
Returnera heltal värderade systemkonfigurationsvärden. Om konfigurationsvärdet som anges med namnet inte definieras, -1 returneras. Kommentarerna angående namnparametern för confstr () gäller också här; ordboken som ger information om de kända namnen ges av sysconf_names .

Tillgänglighet: Unix.
  os.sysconf_names  
Namn på ordbokskartläggning accepterade av sysconf () till de heltalsvärden som definierats för dessa namn av värdoperativsystemet. Detta kan användas för att bestämma den uppsättning namn som är kända för systemet.

Tillgänglighet: Unix.

Följande datavärden används för att stödja banmanipulationsåtgärder. Dessa definieras för alla plattformar.

Åtgärder på högre nivå på sökvägar definieras i os.path modul.

  os.curdir  
Den konstanta strängen som används av operativsystemet för att referera till den aktuella katalogen. Detta är '.' för Windows och POSIX. Finns även via os.path .
  os.pardir  
Den konstanta strängen som används av operativsystemet för att referera till den överordnade katalogen. Detta är '..' för Windows och POSIX. Finns även via os.path .
  os.sep  
Tecknet som används av operativsystemet för att separera sökvägskomponenter. Detta är '/' för POSIX och '\' för Windows. Observera att kunskap om detta inte räcker för att kunna analysera eller sammanfoga sökvägar - använd os.path.split () och os.path.join () - men det är ibland användbart. Finns även via os.path .
  os.altsep  
Ett alternativt tecken som används av operativsystemet för att separera komponenter i sökvägen, eller Ingen om det bara finns ett skiljetecken. Detta är inställt på '/' på Windows-system där sep är en backslash. Finns även via os.path .
  os.extsep  
Tecknet som skiljer basfilnamnet från tillägget; till exempel '.' i os.py . Finns även via os.path .
  os.pathsep  
Tecknet som vanligtvis används av operativsystemet för att separera sökvägskomponenter (som i VÄG ), såsom ':' för POSIX eller ';' för Windows. Finns även via os.path .
  os.defpath  
Standardsökvägen som används av exec * p * och leka * p * om miljön inte har en 'PATH' -nyckel. Finns även via os.path .
  os.linesep  
Strängen som används för att separera (eller snarare avsluta) rader på den aktuella plattformen. Detta kan vara en enda karaktär, till exempel ' n 'för POSIX eller till exempel flera tecken' r n 'för Windows. Använd inte os.linesep som linjeterminator när du skriver filer som öppnas i textläge (standard); använd en singel n istället på alla plattformar.
  os.devnull  
Noll-enhetens filsökväg. Till exempel: ' / dev / null 'för POSIX,' Nej 'för Windows. Finns även via os.path .
  os.RTLD_LAZYos.RTLD_NOWos.RTLD_GLOBALos.RTLD_LOCALos.RTLD_NODELETEos.RTLD_NOLOADos.RTLD_DEEPBIND  
Flaggor för användning med setdlopenflags () och getdlopenflags () funktioner. Se Unix manualsida dlopen () för vad de olika flaggorna betyder.

Diverse funktioner

  os.urandom(   n   )  
Returnera en sträng med n slumpmässiga byte som är lämpliga för kryptografisk användning.

Denna funktion returnerar slumpmässiga byte från en OS-specifik slumpmässighetskälla. De returnerade uppgifterna bör vara oförutsägbara för kryptografiska applikationer, även om dess exakta kvalitet beror på OS-implementeringen. På ett Unix-liknande system kommer detta att fråga / dev / urandom , och på Windows kommer det att användas CryptGenRandom () . Om en slumpmässig källa inte hittas kommer NotImplementedError att höjas.

För ett lättanvänt gränssnitt till den slumptalsgenerator som tillhandahålls av din plattform, se random.SystemRandom .