Zoeken op website

Leer de Python Sys-module


In dit artikel bekijken we de Python Sys-module. Er zijn variabelen en functies die door de tolk worden onderhouden en de sys-module biedt een manier om ermee te communiceren. Deze variabelen zijn beschikbaar totdat de tolk leeft. We zullen een blik werpen op enkele van de veelgebruikte systeemfuncties.

Om met de sys-module te werken, moet u eerst de module importeren.

sys.version – Dit slaat de informatie op over de huidige versie van Python.

python3
>>> import sys
>>> sys.version

sys.path – Padvariabele slaat het mappad op in de vorm van een lijst met tekenreeksen. Telkens wanneer u een module importeert of een programma uitvoert met behulp van een relatief pad, zoekt Python-interpreter naar de benodigde module of script met behulp van de padvariabele.

Padindex slaat de map op met het script dat werd gebruikt om de Python-interpreter aan te roepen bij de index “Zero”. Als de tolk interactief wordt aangeroepen of als het script wordt gelezen vanuit standaardinvoer, zal path[0] een lege string zijn.

>>> sys.path

Wanneer het script wordt aangeroepen, slaat het pad[0] het mappad op.

vim 1.py
python3 1.py

Als u modules in een aangepaste map heeft, kunt u het mappad aan de padvariabele toevoegen met behulp van een path.append() methode (aangezien het pad een lijstobject is, gebruiken we de lijstmethode “toevoegen”).

python3
>>> import sys
>>> sys.path
>>> sys.path.append('/root/test/')
>>> sys.path

sys.argvargv wordt gebruikt om runtime-argumenten door te geven aan uw Python-programma. Argv is een lijst waarin de scriptnaam wordt opgeslagen als de eerste waarde, gevolgd door de argumenten die we doorgeven. Argv-waarden worden opgeslagen als typetekenreeks en u moet deze expliciet converteren volgens uw behoeften.

>>> sys.argv

Wanneer u het onderstaande fragment uitvoert, wordt de eindwaarde van de bereikfunctie via sys.argv[1] doorgegeven als 10 en worden er ook enkele andere waarden doorgegeven om de lijst met argv af te drukken waarden aan het einde van het programma.

#!/usr/bin/python3

import sys

for x in range(1,int(sys.argv[1])):
    print(x)
    
Print all the arguments passed
print("Arguments passed:",sys.argv)

sys.executable – Drukt het absolute pad af van het binaire bestand van de Python-interpreter.

>>> sys.executable
'/usr/bin/python3'

sys.platform – Drukt het os-platformtype af. Deze functie zal erg handig zijn als u uw programma platformafhankelijk uitvoert.

>>> sys.platform
'linux'

sys.exit – Sluit de tolk af door SystemExit(status) te verhogen. Standaard wordt gezegd dat de status Nul is en dat deze succesvol is. We kunnen een geheel getal gebruiken als Exit Status of andere soorten objecten zoals string(“failed”), zoals weergegeven in het onderstaande voorbeeld.

Onder het voorbeeld wordt een fragment gebruikt om te controleren of het platform Windows is en vervolgens de code uit te voeren. Als dit niet het geval is, verhoogt u de exit()-functie.

#!/usr/bin/python3

import sys

if sys.platform == 'windows':  # CHECK ENVIRONMENT
    #code goes here
    pass
else:
    print("This script is intended to run only on Windows, Detected platform: ", sys.platform)
    sys.exit("Failed")

sys.maxsize – Dit is een geheel getal dat de maximale waarde vertegenwoordigt die een variabele kan bevatten.

On a 32-bit platform it is 2**31 - 1 
On a 64-bit platform it is 2**63 - 1
Afronden

We hebben enkele belangrijke functies van de sys-module gezien en er zijn nog veel meer functies. Totdat we met het volgende artikel komen, kun je hier meer lezen over de sys-module.