{"id":18466128,"url":"https://github.com/codigo100cera/python-virtual-enviroment","last_synced_at":"2025-05-05T08:55:42.450Z","repository":{"id":224090602,"uuid":"759628191","full_name":"codigo100cera/python-virtual-enviroment","owner":"codigo100cera","description":"Guia Rápido para criação de ambientes virtuais python.","archived":false,"fork":false,"pushed_at":"2024-02-23T17:14:40.000Z","size":6,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-16T17:48:46.624Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/codigo100cera.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-02-19T02:51:35.000Z","updated_at":"2024-02-23T17:14:45.000Z","dependencies_parsed_at":null,"dependency_job_id":"bd9833f8-49ad-4df6-b908-f5ecb764bf7d","html_url":"https://github.com/codigo100cera/python-virtual-enviroment","commit_stats":null,"previous_names":["codigo100cera/python-virtual-enviroment"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codigo100cera%2Fpython-virtual-enviroment","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codigo100cera%2Fpython-virtual-enviroment/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codigo100cera%2Fpython-virtual-enviroment/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codigo100cera%2Fpython-virtual-enviroment/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/codigo100cera","download_url":"https://codeload.github.com/codigo100cera/python-virtual-enviroment/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251887350,"owners_count":21659965,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-06T09:15:16.827Z","updated_at":"2025-05-01T14:21:39.573Z","avatar_url":"https://github.com/codigo100cera.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Guia Rápido para Criação de Ambientes Virtuais e Estrutura de Projeto Python\n\n## Introdução\nQuando trabalhamos em projetos Python, é essencial manter um ambiente de desenvolvimento organizado e isolado. Neste guia, abordaremos como criar ambientes virtuais usando o `venv`, `virtualenv` ou `virtualenvwrapper` e como estruturar um projeto básico  para publicação no github.\n\n```mermaid\nflowchart\n    PYTHON-GLOBAL --\u003e VENV-TOOLS\n    VENV-TOOLS --\u003e venv-builtin\n    VENV-TOOLS --\u003e virtualenv\n    VENV-TOOLS --\u003e virtualenvwrapper\n    VENV-TOOLS --\u003e outros...\n    venv-builtin --\u003e venv1\n    virtualenv --\u003e venv4\n    virtualenv ---\u003e venv5\n    virtualenvwrapper ----\u003e venv2\n    virtualenvwrapper ---\u003e venv6\n    virtualenvwrapper --\u003e venv3\n    outros... --\u003e venv7\n```\n## Criando um Ambiente Virtual com `venv`\nO `venv` é um módulo integrado ao Python e permite criar ambientes virtuais de forma simples. Siga os passos abaixo:\n\n1. **Abra um Terminal ou Prompt de Comando:**\n   - Acesse o diretório raiz do seu projeto usando o comando `cd /caminho/do/seu/projeto`.\n\n2. **Crie o Ambiente Virtual:**\n   - Execute o seguinte comando para criar um ambiente virtual com o nome desejado (substitua `nome_do_ambiente` pelo nome que você escolher):\n     ```\n     python -m venv nome_do_ambiente\n     ```\n\n3. **Ative o Ambiente Virtual:**\n   - Dependendo do seu sistema operacional:\n     - No Windows:\n       ```\n       nome_do_ambiente\\Scripts\\activate\n       ```\n     - No macOS e Linux:\n       ```\n       source nome_do_ambiente/bin/activate\n       ```\n   - O ambiente virtual estará ativado quando você ver o nome dele no prompt do terminal.\n\n4. **Desativando o Ambiente Virtual:**\n   - Para retornar ao ambiente global do Python, digite:\n     ```\n     deactivate\n     ```\n\n## Criando um Ambiente Virtual com `virtualenv`\n\nO `virtualenv` é uma ferramenta externa que oferece mais flexibilidade na criação de ambientes virtuais. Siga os passos abaixo:\n\n1. **Instale o `virtualenv`:**\n   - Execute o seguinte comando para instalar o `virtualenv`:\n     ```\n     pip install virtualenv\n     ```\n\n2. **Crie o Ambiente Virtual:**\n   - Navegue até o diretório do seu projeto e execute:\n     ```\n     virtualenv nome_do_ambiente\n     ```\n\n3. **Ative e Desative o Ambiente Virtual:**\n   - Para ativar o ambiente virtual:\n     - No Windows:\n       ```\n       nome_do_ambiente\\Scripts\\activate\n       ```\n     - No macOS e Linux:\n       ```\n       source nome_do_ambiente/bin/activate\n       ```\n   - Para desativar o ambiente virtual:\n     ```\n     deactivate\n     ```\n\n4. **Listar Ambientes Virtuais:**\n   - Para listar todos os ambientes virtuais criados:\n     ```\n     lsvirtualenv\n     ```\n\n5. **Remover um Ambiente Virtual:**\n   - Para remover um ambiente virtual específico:\n     ```\n     rmvirtualenv nome_do_ambiente\n     ```\n\n## Criando um Ambiente Virtual com `virtualenvwrapper-win`\n\nO `virtualenvwrapper-win` é uma alternativa para Windows. Ele simplifica a criação e gerenciamento de ambientes virtuais. Siga os passos abaixo:\n\n1. **Instale o `virtualenvwrapper-win`:**\n   - Execute o seguinte comando:\n     ```\n     pip install virtualenvwrapper-win\n     ```\n\n2. **Crie o Ambiente Virtual:**\n   - Navegue até o diretório do seu projeto e execute:\n     ```\n     mkvirtualenv nome_do_ambiente\n     ```\n\n3. **Ative e Desative o Ambiente Virtual:**\n   - Para ativar o ambiente virtual:\n     ```\n     workon nome_do_ambiente\n     ```\n   - Para desativar o ambiente virtual:\n     ```\n     deactivate\n     ```\n\n4. **Listar Ambientes Virtuais:**\n   - Para listar todos os ambientes virtuais criados:\n     ```\n     workon\n     ```\n\n5. **Remover um Ambiente Virtual:**\n   - Para remover um ambiente virtual específico:\n     ```\n     rmvirtualenv nome_do_ambiente\n     ```\n\n## Estrutura de Projeto Básico\nAqui está uma sugestão de estrutura para o seu projeto Python:\n```\nmeu_projeto/\n│   .env\n│   .env-exemplo\n│   .gitignore\n│   main.py\n│   LICENSE\n│   README.md\n│\n└───venv/\n│       Include/\n│       Lib/\n│       Scripts/\n│         activate.bat\n│         activate\n│         python.exe\n│         pip.exe\n│         ...\n│   \n└───.vscode/\n│       settings.json\n│   \n└───meu_app/\n│   │   __init__.py\n│   │   app.py\n│   │\n│   └───utils/\n│       │   __init__.py\n│       │   helper.py\n│\n└───tests/\n    │   test_app.py\n```\n\n- `.env`: Arquivo que permite isolar configurações e proteger informações confidenciais. (***ATENÇÃO***: o nome deste arquivo deve ser adicionado no .gitignore) \n- `.env-exemplo`: Arquivo com as variáveis de ambiente utilizadas apenas com valores fictícios atribuidos a elas. \n- `.gitignore`: Arquivo para ignorar arquivos e pastas no Git (inclua o ambiente virtual).\n- `main.py`: Ponto de entrada do seu aplicativo.\n- `LICENCE`: Licença do projeto.\n- `README.md`: Documentação do projeto.\n- `.vscode/`:  Pasta de configurações de projeto que se aplicam apenas ao ambiente de desenvolvimento do VSCode.\n  - `settings.json`: O arquivo `settings.json` do Visual Studio Code (VSCode) contém configurações que afetam o comportamento do ambiente de desenvolvimento. No exemplo fornecido, são definidos padrões de exclusão para determinados tipos de arquivos no explorador de arquivos do VSCode.\n- `meu_app/`: Pasta do seu aplicativo.\n  - `__init__.py`: Arquivo para tornar a pasta um pacote Python.\n  - `app.py`: Código principal do aplicativo.\n  - `utils/`: Pasta para módulos auxiliares.\n    - `__init__.py`: Arquivo para tornar a pasta um pacote Python.\n    - `helper.py`: Funções auxiliares.\n- `tests/`: Pasta para testes unitários.\n  - `test_app.py`: Arquivo de testes.\n\n## Conteúdo do settings.json:\n\n```json\n{ \n    \"files.exclude\": {\n        \"**/*.pyc\": {\"when\": \"$(basename).py\"},\n        \"**/__pycache__\": true,\n        \"**/*.pytest_cache\": true\n    }\n}\n```\n### Atributos e suas funções:\n\n1. **\"files.exclude\"**: Este atributo define padrões de exclusão para determinados tipos de arquivos. Quando configurado, o VSCode oculta automaticamente esses arquivos do explorador de arquivos.\n\n2. **\"**/*.pyc\"**: Exclui arquivos com extensão `.pyc` (bytecode do Python) do explorador de arquivos. O parâmetro adicional `{\"when\": \"$(basename).py\"}` especifica que os arquivos `.pyc` serão excluídos apenas quando houver um arquivo correspondente com a extensão `.py`.\n\n3. **\"**/__pycache__\"**: Exclui o diretório `__pycache__` do explorador de arquivos. Esse diretório é onde o Python armazena os arquivos de cache compilados.\n\n4. **\"**/*.pytest_cache\"**: Exclui arquivos com a extensão `.pytest_cache` do explorador de arquivos. Esse diretório é onde o pytest armazena arquivos de cache.\n\nAo definir esses padrões de exclusão, é possível manter o ambiente de trabalho mais organizado, ocultando arquivos e diretórios que não são relevantes para o trabalho no momento.\n\n## Considerações Finais\nO uso de ambientes virtuais é fundamental para manter a organização e evitar conflitos de dependências em projetos Python. Este guia fornece os passos necessários para criar, ativar e usar um ambiente virtual com exemplos práticos.\n\nLembre-se de configurar um arquivo `.gitignore` para ignorar os arquivos do ambiente virtual ao versionar seu projeto no GitHub.\n\n## Licença\nEste projeto está licenciado sob a Licença MIT.\n\n## Autor\nMcSilva - Código100Cera\n\n## Contribuir\nSinta-se à vontade para fazer melhorias. PRs são muito apreciados.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcodigo100cera%2Fpython-virtual-enviroment","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcodigo100cera%2Fpython-virtual-enviroment","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcodigo100cera%2Fpython-virtual-enviroment/lists"}