# Dapr Python SDK examples

These examples demonstrate how to use the Dapr Python SDK:

| Example                                               | Description |
|-------------------------------------------------------|-------------|
| [Service invocation](./invoke-simple)                 | Invoke service by passing bytes data
| [Service invocation (advanced)](./invoke-custom-data) | Invoke service by using custom protobuf message
| [State management](./state_store)                     | Save and get state to/from the state store
| [Publish & subscribe](./pubsub-simple)                | Publish and subscribe to events
| [Error handling](./error_handling)                    | Error handling
| [Bindings](./invoke-binding)                          | Invoke an output binding to interact with external resources
| [Virtual actors](./demo_actor)                        | Try Dapr virtual actor features
| [Secrets](./secret_store)                             | Get secrets from a defined secret store
| [Distributed tracing](./w3c-tracing)                  | Leverage Dapr's built-in tracing support
| [Distributed lock](./distributed_lock)                | Keep your application safe from race conditions by using distributed locks
| [Workflow](./demo_workflow)                           | Run a workflow to simulate an order processor
| [Cryptography](./crypto)                              | Perform cryptographic operations without exposing keys to your application 

## More information

- [Dapr Python SDK docs](https://docs.dapr.io/developing-applications/sdks/python)
