Tutorial: Create a Python function for Azure Functions
In this article, you create a Python function for Azure Functions with Visual Studio Code. Code for Azure Functions is managed within a Functions project, which you create first before creating the code.
In Azure: Functions explorer (opened using the Azure icon on the left side), select the New Project command icon, or open the Command Palette (F1) and select Azure Functions: Create New Project.
In the prompts that follow:
Prompt Value Description Specify a folder for the project Current open folder The folder in which to create the project. You may want to create the project in a subfolder. Select a language for your function app project Python The language to use for the function, which determines the template used for the code. Select a template for your project's first function HTTP trigger A function that uses an HTTP trigger is run whenever there's an HTTP request made to the function's endpoint. (There are a variety of other triggers for Azure Functions. To learn more, see What can I do with Functions?.) Provide a function name HttpExample The name is used for a subfolder that contains the function's code along with configuration data, and also defines the name of the HTTP endpoint. Use "HttpExample" rather than accepting the default "HTTPTrigger" to distinguish the function itself from the trigger. Authorization level Anonymous Anonymous authorization makes the function publicly accessible to anyone. Select how you would like to open your project Open in current window Opens the project in the current Visual Studio Code window.
If you have both Python 3.6 and 3.7 installed, Visual Studio Code uses Python 3.6 by default for the Azure Functions project. To use Python 3.7 at present, first create and activate a Python 3.7 environment, then use the
func initcommand from a terminal. Then restart Visual Studio Code from that folder using the
After a short time, a message to indicate that the new project was created. In the Explorer, there's the subfolder created for the function, and Visual Studio Code opens the __init__.py file that contains the default function code:
If Visual Studio Code tells you that you don't have a Python interpreter selected when it opens __init__.py, open the Command Palette (F1), select the Python: Select Interpreter command, and then select the virtual environment in the local
.envfolder (which was created as part of the project). The environment must be based on Python 3.6x specifically, as noted in the previous article under Prerequisites.
Whenever you want to create another function in the same project, use the Create Function command in the Azure: Functions explorer, or open the Command Palette (F1) and select the Azure Functions: Create Function command. Both commands prompt you for a function name (which is the name of the endpoint), then creates a subfolder with the default files.