Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 5be7550

Browse files
vilmaciovilmacio22
and
vilmacio22
authored
[PT-BR] Portuguese Translation v1.0 (trekhleb#14)
* main README.md updated * Adds README.pt-BR.md Co-authored-by: vilmacio22 <[email protected]>
1 parent 7a38d73 commit 5be7550

File tree

2 files changed

+213
-0
lines changed

2 files changed

+213
-0
lines changed

README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@
55
> This is a collection of Python scripts that are split by [topics](#table-of-contents) and contain
66
code examples with explanations, different use cases and links to further readings.
77

8+
_Read this in_ [_Português_](README.pt-BR.md)
9+
810
It is a **playground** because you may change or add the code to see how it works
911
and [test it out](#testing-the-code) using assertions. It also allows you
1012
to [lint the code](#linting-the-code) you've wrote and check if it fits to Python code style guide.

README.pt-BR.md

Lines changed: 211 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,211 @@
1+
# Playground e Cheatsheet Para Aprender Python
2+
3+
[![Build Status](https://travis-ci.org/trekhleb/learn-python.svg?branch=master)](https://travis-ci.org/trekhleb/learn-python)
4+
5+
> Essa é uma coleção de scripts Python dividida em [tópicos](#índice) que contém
6+
exemplos de código com explicações, diferentes usos e links para outras leituras.
7+
8+
_Ler em_ [_English_](README.md)
9+
10+
É um **playground** porque você pode fazer alterações no código para ver como ele se comporta,
11+
além de [testá-lo](#testando-o-código) usando asserções. Também é possível
12+
[revisar o código](#revisando-o-código) que você escreveu automaticamente e verificar se ele se encaixa
13+
no guia de estilo de código Python.
14+
Isso tudo pode tornar seu processo de aprendizagem mais interativo e ajudar a manter a qualidade
15+
do código bastante alta desde o início.
16+
17+
É um **cheatsheet** porque você pode voltar a esses exemplos de código quando quiser recapitular a sintaxe das
18+
[estruturas padrão do Python](#índice). O código está cheio de asserções, então você poderá ver o retorno das funções sem precisar executá-las.
19+
20+
> _Você pode se interessar também por 🤖 [Interactive Machine Learning Experiments](https://github.com/trekhleb/machine-learning-experiments)_
21+
22+
## Como Usar Esse Repositório
23+
24+
Nesse repositório, cada script Python possui a seguinte estrutura:
25+
26+
```python
27+
"""Lists <--- Nome do tópico
28+
29+
# @see: https://www.learnpython.org/en/Lists <-- Link para outras leituras.
30+
31+
A seguir, uma explicação mais detalhada do tópico atual (ex, informações gerais sobre listas (Lists)).
32+
"""
33+
34+
35+
def test_list_type():
36+
"""Explicação do subtópico.
37+
38+
Cada arquivo contém funções de teste que ilustram subtópicos (ou seja, tipo de lista, métodos de lista).
39+
"""
40+
41+
# Here is an example of how to build a list. <-- Comentários em inglês explicam a ação.
42+
squares = [1, 4, 9, 16, 25]
43+
44+
# Lists can be indexed and sliced.
45+
# Indexing returns the item.
46+
assert squares[0] == 1 # <-- As asserções ilustram o resultado.
47+
# Slicing returns a new list.
48+
assert squares[-3:] == [9, 16, 25] # <-- As asserções ilustram o resultado.
49+
```
50+
51+
Então você pode querer fazer o seguinte:
52+
53+
- [Encontrar o tópico](#índice) que deseja aprender ou recapitular.
54+
- Ler os comentários e/ou a documentação vinculada em cada script (como no exemplo acima).
55+
- Analisar os exemplos e asserções para ver exemplos de uso e saída esperada das funções.
56+
- Alterar o código ou adicionar novas asserções para ver o que acontece.
57+
- [Executar testes](#testando-o-código) e [revisar o código](#revisando-o-código) para ver se ele
58+
funciona e para saber se está escrito corretamente.
59+
60+
## Índice
61+
62+
1. **Começando**
63+
- [O que é Python](src/getting_started/what_is_python.md)
64+
- [Sintaxe Python](src/getting_started/python_syntax.md)
65+
- [Variáveis](src/getting_started/test_variables.py)
66+
2. **Operators**
67+
- [Operadores Aritméticos](src/operators/test_arithmetic.py) (`+`, `-`, `*`, `/`, `//`, `%`, `**`)
68+
- [Operadores Bitwise](src/operators/test_bitwise.py) (`&`, `|`, `^`, `>>`, `<<`, `~`)
69+
- [Operadores de Atribuição](src/operators/test_assigment.py) (`=`, `+=`, `-=`, `/=`, `//=` etc.)
70+
- [Operadores de Comparação](src/operators/test_comparison.py) (`==`, `!=`, `>`, `<`, `>=`, `<=`)
71+
- [Operadores Lógicos](src/operators/test_logical.py) (`and`, `or`, `not`)
72+
- [Operadores de Indentidade](src/operators/test_identity.py) (`is`, `is not`)
73+
- [Operadores de Associação](src/operators/test_membership.py) (`in`, `not in`)
74+
3. **Tipos de Dados**
75+
- [Números](src/data_types/test_numbers.py) (incluindo boleanos)
76+
- [Strings](src/data_types/test_strings.py) e seus métodos
77+
- [Listas](src/data_types/test_lists.py) e seus métodos (incluindo lista de compreensões)
78+
- [Tuplas](src/data_types/test_tuples.py)
79+
- [Conjuntos](src/data_types/test_sets.py) e seus métodos
80+
- [Dicionários](src/data_types/test_dictionaries.py)
81+
- [Casting de Tipo](src/data_types/test_type_casting.py)
82+
4. **Controles de Fluxo**
83+
- [A declaração `if`](src/control_flow/test_if.py)
84+
- [A declaração `for`](src/control_flow/test_for.py) (e a função `range()`)
85+
- [A declaração `while`](src/control_flow/test_while.py)
86+
- [A declaração `try`](src/control_flow/test_try.py)
87+
- [A declaração `break`](src/control_flow/test_break.py)
88+
- [A declaração `continue`](src/control_flow/test_continue.py)
89+
5. **Funções**
90+
- [Definição de Função](src/functions/test_function_definition.py) (declaração `def` e `return`)
91+
- [Variáveis Dentro das Funções](src/functions/test_function_scopes.py) (declaração `global` e `nonlocal`)
92+
- [Valores Padrão de Argumentos](src/functions/test_function_default_arguments.py)
93+
- [Argumentos de palavras-chave](src/functions/test_function_keyword_arguments.py)
94+
- [Listas de Argumento Arbitrárias](src/functions/test_function_arbitrary_arguments.py)
95+
- [Desfazendo Lista de Argumentos](src/functions/test_function_unpacking_arguments.py) (declaração `*` e `**`)
96+
- [Expressões Lambda](src/functions/test_lambda_expressions.py) (declaração `lambda`)
97+
- [Documentação das Strings](src/functions/test_function_documentation_string.py)
98+
- [Função de Anotações](src/functions/test_function_annotations.py)
99+
- [Função de Decoradores](src/functions/test_function_decorators.py)
100+
6. **Classes**
101+
- [Definição de Classe](src/classes/test_class_definition.py) (declaração `class`)
102+
- [Classes dos Objetos](src/classes/test_class_objects.py)
103+
- [Instância dos Objetos](src/classes/test_instance_objects.py)
104+
- [Métodos de Objetos](src/classes/test_method_objects.py)
105+
- [Variável de Classe e Instância](src/classes/test_class_and_instance_variables.py)
106+
- [Herança](src/classes/test_inheritance.py)
107+
- [Herança Múltipla](src/classes/test_multiple_inheritance.py)
108+
7. **Módulos**
109+
- [Módulos](src/modules/test_modules.py) (declaração `import`)
110+
- [Pacotes](src/modules/test_packages.py)
111+
8. **Erros e Exceções**
112+
- [Tratando Exceções](src/exceptions/test_handle_exceptions.py) (declaração `try`)
113+
- [Levantando Exceções](src/exceptions/test_raise_exceptions.py) (declaração `raise`)
114+
9. **Arquivos**
115+
- [Lendo e Escrevendo](src/files/test_file_reading.py) (declaração `with`)
116+
- [Métodos de Objetos de Arquivos](src/files/test_file_methods.py)
117+
10. **Adicional**
118+
- [A declaração `pass`](src/additions/test_pass.py)
119+
- [Geradores](src/additions/test_generators.py) (declaração `yield`)
120+
11. **Algumas Bibliotecas Padrão**
121+
- [Serialization](src/standard_libraries/test_json.py) (biblioteca `json`)
122+
- [File Wildcards](src/standard_libraries/test_glob.py) (biblioteca `glob`)
123+
- [String Pattern Matching](src/standard_libraries/test_re.py) (biblioteca `re`)
124+
- [Mathematics](src/standard_libraries/test_math.py) (bibliotecas `math`, `random` e `statistics`)
125+
- [Tempo e Datas](src/standard_libraries/test_datetime.py) (biblioteca `datetime`)
126+
- [Compressão de dados](src/standard_libraries/test_zlib.py) (biblioteca `zlib`)
127+
128+
## Pré-requisitos
129+
130+
**Instalando o Python**
131+
132+
Certifique-se de ter o [Python3 instalado](https://realpython.com/installing-python/) em sua máquina.
133+
134+
Você pode usar a biblioteca padrão do Python [venv](https://docs.python.org/3/library/venv.html)
135+
para criar ambientes virtuais e ter o Python, pip e todos os outros pacotes a serem instalados
136+
a partir do diretório local do projeto para evitar mexer com pacotes externos ou do sistema.
137+
138+
Dependendo da sua instalação, você pode ter acesso ao interpretador Python3 executando `python` ou `python3`. O mesmo vale para o gerenciador de pacotes pip, você pode acessá-lo executando `pip` ou `pip3`.
139+
140+
Você pode ver a versão do seu Python executando:
141+
142+
```bash
143+
python --version
144+
```
145+
146+
Observe que neste repositório sempre que você vê o `python`, será assumido que é o Python **3**.
147+
148+
**Instalando dependências**
149+
150+
Instale todas as dependências necessárias para o projeto executando:
151+
152+
```bash
153+
pip install -r requirements.txt
154+
```
155+
156+
## Testando o Código
157+
158+
Testes são feitos usando o framework [pytest](https://docs.pytest.org/en/latest/).
159+
160+
Você pode adicionar novos testes criando arquivos e funções com o prefixo `test_`
161+
(ex. `test_topic.py` com a função `def test_sub_topic()` dentro).
162+
163+
Para executar todos os testes, execute o seguinte comando na pasta raiz do projeto:
164+
165+
```bash
166+
pytest
167+
```
168+
169+
Para executar testes específicos, execute:
170+
171+
```bash
172+
pytest ./path/to/the/test_file.py
173+
```
174+
175+
## Revisando o Código
176+
177+
A revisão é feita usando as bibliotecas [pylint](http://pylint.pycqa.org/) e [flake8](http://flake8.pycqa.org/en/latest/).
178+
179+
### PyLint
180+
181+
Para verificar se o código está escrito de acordo com o guia de estilo
182+
do [PEP 8](https://www.python.org/dev/peps/pep-0008/), execute:
183+
184+
```bash
185+
pylint ./src/
186+
```
187+
188+
Caso o pylint detecte um erro (ex. `missing-docstring`), convém ler mais sobre erros específicos executando:
189+
190+
```bash
191+
pylint --help-msg=missing-docstring
192+
```
193+
194+
[Saber mais sobre PyLint](http://pylint.pycqa.org/)
195+
196+
### Flake8
197+
198+
Para verificar se o código está escrito de acordo com o guia de estilo
199+
do [PEP 8](https://www.python.org/dev/peps/pep-0008/), execute:
200+
201+
```bash
202+
flake8 ./src
203+
```
204+
205+
Ou, se você quiser uma saída mais detalhada, execute:
206+
207+
```bash
208+
flake8 ./src --statistics --show-source --count
209+
```
210+
211+
[Saber mais sobre Flake8](http://flake8.pycqa.org/en/latest/)

0 commit comments

Comments
 (0)