Commands for installing Python 3.5 without prompts, removing it again and detecting it from deployment tools. A command is shown only when it is certain: from the manifest or the installer technology’s documented default.
Related guide: Silent install switches: MSI, NSIS, Inno Setup · Uninstall a program with the registry or PowerShell
With winget
PowerShell
winget install --id Python.Python.3.5 -e --silent --accept-package-agreements --accept-source-agreementswinget upgrade --id Python.Python.3.5 -e --silentwinget uninstall --id Python.Python.3.5 -e --silentBy installer
64-bit · EXE (WiX Burn) · Current user
Silent install
python-3.5.4-amd64.exe /quiet /norestartUninstall
msiexec /x {5D57524F-AF24-49A7-B90B-92138880481E} /qn /norestart- MSI product code
- {5d57524f-af24-49a7-b90b-92138880481e}
- Uninstall registry key
- HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{5d57524f-af24-49a7-b90b-92138880481e}
- UpgradeCode
- {EEB42FF5-6DC6-5D71-9D60-792E37FA8953}
- DisplayVersion
- 3.5.4150.0
64-bit · EXE (WiX Burn) · All users
Silent install
python-3.5.4-amd64.exe /quiet /norestartUninstall
msiexec /x {5D57524F-AF24-49A7-B90B-92138880481E} /qn /norestart- MSI product code
- {5d57524f-af24-49a7-b90b-92138880481e}
- Uninstall registry key
- HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{5d57524f-af24-49a7-b90b-92138880481e}
- UpgradeCode
- {EEB42FF5-6DC6-5D71-9D60-792E37FA8953}
- DisplayVersion
- 3.5.4150.0
32-bit · EXE (WiX Burn) · Current user
Silent install
python-3.5.4.exe /quiet /norestartUninstall
msiexec /x {06E841FA-CA3B-4886-A820-CD32C614B0C1} /qn /norestart- MSI product code
- {06e841fa-ca3b-4886-a820-cd32c614b0c1}
- Uninstall registry key
- HKCU\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{06e841fa-ca3b-4886-a820-cd32c614b0c1}
- UpgradeCode
- {3A1A27C0-4578-514F-9380-81D44B2F03AB}
- DisplayVersion
- 3.5.4150.0
32-bit · EXE (WiX Burn) · All users
Silent install
python-3.5.4.exe /quiet /norestartUninstall
msiexec /x {06E841FA-CA3B-4886-A820-CD32C614B0C1} /qn /norestart- MSI product code
- {06e841fa-ca3b-4886-a820-cd32c614b0c1}
- Uninstall registry key
- HKLM\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{06e841fa-ca3b-4886-a820-cd32c614b0c1}
- UpgradeCode
- {3A1A27C0-4578-514F-9380-81D44B2F03AB}
- DisplayVersion
- 3.5.4150.0
PowerShell: download, verify, install
Downloads the official file, checks its SHA256 and installs it silently.
install-python-3-5.ps1
$url = 'https://www.python.org/ftp/python/3.5.4/python-3.5.4-amd64.exe'
$sha256 = '9B7741CC32357573A77D2EE64987717E527628C38FD7EAF3E2AACA853D45A1EE'
$file = Join-Path $env:TEMP 'python-3.5.4-amd64.exe'
Invoke-WebRequest -Uri $url -OutFile $file -UseBasicParsing
if ((Get-FileHash $file -Algorithm SHA256).Hash -ne $sha256) { throw 'SHA256 mismatch' }
Start-Process -FilePath $file -ArgumentList '/quiet /norestart' -Wait install-python-3-5.ps1
$url = 'https://www.python.org/ftp/python/3.5.4/python-3.5.4-amd64.exe'
$sha256 = '9B7741CC32357573A77D2EE64987717E527628C38FD7EAF3E2AACA853D45A1EE'
$file = Join-Path $env:TEMP 'python-3.5.4-amd64.exe'
Invoke-WebRequest -Uri $url -OutFile $file -UseBasicParsing
if ((Get-FileHash $file -Algorithm SHA256).Hash -ne $sha256) { throw 'SHA256 mismatch' }
Start-Process -FilePath $file -ArgumentList '/quiet /norestart' -Wait install-python-3-5.ps1
$url = 'https://www.python.org/ftp/python/3.5.4/python-3.5.4.exe'
$sha256 = 'F27C2D67FD9688E4970F3BFF799BB9D722A0D6C2C13B04848E1F7D620B524B0E'
$file = Join-Path $env:TEMP 'python-3.5.4.exe'
Invoke-WebRequest -Uri $url -OutFile $file -UseBasicParsing
if ((Get-FileHash $file -Algorithm SHA256).Hash -ne $sha256) { throw 'SHA256 mismatch' }
Start-Process -FilePath $file -ArgumentList '/quiet /norestart' -Wait install-python-3-5.ps1
$url = 'https://www.python.org/ftp/python/3.5.4/python-3.5.4.exe'
$sha256 = 'F27C2D67FD9688E4970F3BFF799BB9D722A0D6C2C13B04848E1F7D620B524B0E'
$file = Join-Path $env:TEMP 'python-3.5.4.exe'
Invoke-WebRequest -Uri $url -OutFile $file -UseBasicParsing
if ((Get-FileHash $file -Algorithm SHA256).Hash -ne $sha256) { throw 'SHA256 mismatch' }
Start-Process -FilePath $file -ArgumentList '/quiet /norestart' -Wait