[英]How do I select environment variables using os.environ (using VSCode & Python)
我正在 VSCode 中構建一個 Azure Function 並且無法在本地獲取我的 function 以引用我添加到 local.settings.json 的環境變量,因為我在嘗試訪問我的環境變量時遇到錯誤。 我想訪問名為 clientId 的那個。
我的 local.settings.json:
{
"IsEncrypted": false,
"Values": {
"AzureWebJobsStorage": "",
"FUNCTIONS_WORKER_RUNTIME": "python",
"clientId": "test123"
}
}
我的腳本:
import os
import azure.functions as func
print(os.environ['clientId'])
錯誤:
File "c:\Users\xxxx\source\Repos\xxxx\Python\xxxx\HttpTrigger1\__init__.py", line 7, in <module>
print(os.environ['clientID'])
File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.9_3.9.3312.0_x64__qbz5n2kfra8p0\lib\os.py",
line 679, in __getitem__
raise KeyError(key) from None
KeyError: 'clientID'
為了嘗試解決此問題,我嘗試打印所有期望看到我的 local.settings.json 的環境變量,但是我沒有看到任何類似於 local.settings.json 文件的內容。
腳本:
import os
import azure.functions as func
print(os.environ)
回復:
environ({
"ALLUSERSPROFILE":"C:\\ProgramData",
"APPDATA":"C:\\Users\\xxxx\\AppData\\Roaming",
"CHROME_CRASHPAD_PIPE_NAME":"\\\\.\\pipe\\crashpad_4888_HMCJUBDIIALYYBRP",
"COMMONPROGRAMFILES":"C:\\Program Files\\Common Files",
"COMMONPROGRAMFILES(X86)":"C:\\Program Files (x86)\\Common Files",
"COMMONPROGRAMW6432":"C:\\Program Files\\Common Files",
"COMPUTERNAME":"xxxx",
"COMSPEC":"C:\\windows\\system32\\cmd.exe",
"DEPLOYMENT.EXPIRATION.CHECK.ENABLED":"false",
"DRIVERDATA":"C:\\Windows\\System32\\Drivers\\DriverData",
"FPS_BROWSER_APP_PROFILE_STRING":"Internet Explorer",
"FPS_BROWSER_USER_PROFILE_STRING":"Default",
"HOMEDRIVE":"C:",
"HOMEPATH":"\\Users\\xxxN",
"LOCALAPPDATA":"C:\\Users\\xxxN\\AppData\\Local",
"LOG4J_FORMAT_MSG_NO_LOOKUPS":"true",
"LOGONSERVER":"\\\\xxxxxxxxxx",
"NUMBER_OF_PROCESSORS":"8",
"ONEDRIVE":"C:\\Users\\xxxN\\OneDrive - xxx",
"ONEDRIVECOMMERCIAL":"C:\\Users\\xxxN\\OneDrive - xxx",
"ORIGINAL_XDG_CURRENT_DESKTOP":"undefined",
"OS":"Windows_NT",
"PATH":"C:\\Program Files\\Eclipse Foundation\\jdk-8.0.302.8-hotspot\\bin;C:\\Program Files (x86)\\Common Files\\Oracle\\Java\\javapath;C:\\windows\\system32;C:\\windows;C:\\windows\\System32\\Wbem;C:\\windows\\System32\\WindowsPowerShell\\v1.0\\;C:\\Program Files\\Gemalto\\Classic Client\\BIN;C:\\Program Files (x86)\\Gemalto\\Classic Client\\BIN;C:\\Program Files\\Git\\cmd;C:\\Program Files\\Microsoft SQL Server\\150\\Tools\\Binn\\;C:\\Program Files\\Microsoft SQL Server\\Client SDK\\ODBC\\170\\Tools\\Binn\\;C:\\Program Files\\dotnet\\;C:\\Program Files (x86)\\Microsoft SQL Server\\150\\DTS\\Binn\\;C:\\Program Files\\Azure Data Studio\\bin;C:\\Program Files\\Microsoft SQL Server\\130\\Tools\\Binn\\;C:\\Program Files (x86)\\dotnet\\;C:\\Users\\xxxN\\AppData\\Local\\Microsoft\\WindowsApps;;C:\\Users\\xxxxN\\AppData\\Local\\Programs\\Azure Data Studio\\bin;C:\\Users\\xxxxN\\AppData\\Local\\Programs\\Microsoft VS Code\\bin",
"PATHEXT":".COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC;.CPL",
"PROCESSOR_ARCHITECTURE":"AMD64",
"PROCESSOR_IDENTIFIER":"Intel64 Family 6 Model 140 Stepping 1, GenuineIntel",
"PROCESSOR_LEVEL":"6",
"PROCESSOR_REVISION":"8c01",
"PROGRAMDATA":"C:\\ProgramData",
"PROGRAMFILES":"C:\\Program Files",
"PROGRAMFILES(X86)":"C:\\Program Files (x86)",
"PROGRAMW6432":"C:\\Program Files",
"PSMODULEPATH":"C:\\Users\\xxxxN\\Documents\\WindowsPowerShell\\Modules;C:\\Program Files\\WindowsPowerShell\\Modules;C:\\windows\\system32\\WindowsPowerShell\\v1.0\\Modules",
"PUBLIC":"C:\\Users\\Public",
"SESSIONNAME":"Console",
"SYSTEMDRIVE":"C:",
"SYSTEMROOT":"C:\\windows",
"TEMP":"C:\\Users\\xxxxN\\AppData\\Local\\Temp",
"TMP":"C:\\Users\\xxxxN\\AppData\\Local\\Temp",
"UID":"fxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxf",
"USERDNSDOMAIN":"BLUE.LOCAL",
"USERDOMAIN":"BLUE",
"USERDOMAIN_ROAMINGPROFILE":"BLUE",
"USERNAME":"xxxxx",
"USERPROFILE":"C:\\Users\\xxxxN",
"WINDIR":"C:\\windows",
"ZES_ENABLE_SYSMAN":"1",
"TERM_PROGRAM":"vscode",
"TERM_PROGRAM_VERSION":"1.66.0",
"LANG":"en_US.UTF-8",
"COLORTERM":"truecolor",
"VSCODE_GIT_IPC_HANDLE":"\\\\.\\pipe\\vscode-git-33ca814331-sock",
"VSCODE_GIT_ASKPASS_NODE":"C:\\Users\\xxxN\\AppData\\Local\\Programs\\Microsoft VS Code\\Code.exe",
"VSCODE_GIT_ASKPASS_EXTRA_ARGS":"--ms-enable-electron-run-as-node",
"VSCODE_GIT_ASKPASS_MAIN":"c:\\Users\\xxxxN\\AppData\\Local\\Programs\\Microsoft VS Code\\resources\\app\\extensions\\git\\dist\\askpass-main.js",
"GIT_ASKPASS":"c:\\Users\\xxxxx\\AppData\\Local\\Programs\\Microsoft VS Code\\resources\\app\\extensions\\git\\dist\\askpass.sh",
"PYTHONUSERBASE":"C:\\Users\\xxxxx\\AppData\\Local\\Packages\\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\\LocalCache\\local-packages"
})
local.settings.json
是Azure函數使用的配置文件。 它不是鏈接到 Python 本身的東西,可以直接在任何環境中工作。
使用這個模塊,如果你用它啟動 Azure Function,它應該在本地模擬 AzureDevOps 上下文。
https://marketplace.visualstudio.com/items?itemName=ms-azuretools.vscode-azurefunctions
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.