= Cheatsheet Python =
**Summary**: Python hints, tips, oneliners and best practices. \\
**Date**: 8 December 2024 \\
{{tag>cheatsheet python}}
== Python Pipeline Tasks ==
- task: PythonScript@0
displayName: "Sort and print all system environments "
inputs:
scriptSource: 'inline'
script: |
import os
for name, value in sorted(os.environ.items()):
print(" " + name + "=" + value)
- task: PythonScript@0
displayName: "Python version "
inputs:
scriptSource: 'inline'
script: |
import subprocess
import os
if os.environ['AGENT_OS'] == "Linux":
version = subprocess.getoutput('python3 --version')
elif os.environ['AGENT_OS'] == "Windows_NT":
version = subprocess.getoutput('py -3 --version')
else:
version = "unknown"
print(f"Python version is {version}")
- task: PythonScript@0
displayName: "Pip version "
inputs:
scriptSource: 'inline'
script: |
import subprocess
pip = subprocess.getoutput('pip --version')
print(f"Pip version is {pip}")
- task: PowerShell@2
displayName: "Python virtual environment"
inputs:
pwsh: true
targetType: 'inline'
script: |
Write-Host "`n##[section]Start python script`n"
# Create virtual environment "env" by running module venv (https://packaging.python.org/en/latest/guides/installing-using-pip-and-virtual-environments/)
py -m venv env
.\env\Scripts\activate.ps1 -Verbose
Write-Host "`n##[section]Verify virtual environment`n"
Get-Command python.exe
Write-Host "`n##[section]Install packages`n"
$scriptDir = "$(BUILD.SourcesDirectory)\$(BUILD.REPOSITORY.NAME)\src\$module"
Write-Host "Locatie: $(Get-Location); Script dir: $scriptDir"
if (Test-Path $scriptDir\requirements.txt){
Write-Host "Directory: $scriptDir; Requirements file: Present"
py -m pip install -r $scriptDir\requirements.txt
}else {
Write-Host "Directory: $scriptDir; Requirements file: Not present. Installing from code."
# install a package
py -m pip install requests
# install a specific version
py -m pip install pandas==1.5.2
}
Write-Host "`n##[section]Run python script`n"
if (Test-Path $scriptDir\main.py){
Write-Host "Script: $scriptDir\main.py; Status: Present"
py $scriptDir\main.py
}else{
Throw "Script: not found in $scriptDir"
}
Write-Host "`n##[section]Install packages`n"
# install a package
py -m pip install requests
# install a specific version
py -m pip install pandas==1.5.2
//This wiki has been made possible by://