Browse Source

📝 Update includes for `docs/pt/docs/python-types.md` (#12671)

pull/12800/head
Rafael de Oliveira Marques 5 months ago
committed by GitHub
parent
commit
51fe0e437b
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
  1. 42
      docs/pt/docs/python-types.md

42
docs/pt/docs/python-types.md

@ -22,9 +22,7 @@ Se você é um especialista em Python e já sabe tudo sobre type hints, pule par
Vamos começar com um exemplo simples: Vamos começar com um exemplo simples:
```Python {* ../../docs_src/python_types/tutorial001.py *}
{!../../docs_src/python_types/tutorial001.py!}
```
A chamada deste programa gera: A chamada deste programa gera:
@ -38,9 +36,7 @@ A função faz o seguinte:
* Converte a primeira letra de cada uma em maiúsculas com `title()`. * Converte a primeira letra de cada uma em maiúsculas com `title()`.
* <abbr title = "Agrupa-os, como um. Com o conteúdo de um após o outro.">Concatena</abbr> com um espaço no meio. * <abbr title = "Agrupa-os, como um. Com o conteúdo de um após o outro.">Concatena</abbr> com um espaço no meio.
```Python hl_lines="2" {* ../../docs_src/python_types/tutorial001.py hl[2] *}
{!../../docs_src/python_types/tutorial001.py!}
```
### Edite-o ### Edite-o
@ -82,9 +78,7 @@ para:
Esses são os "type hints": Esses são os "type hints":
```Python hl_lines="1" {* ../../docs_src/python_types/tutorial002.py hl[1] *}
{!../../docs_src/python_types/tutorial002.py!}
```
Isso não é o mesmo que declarar valores padrão como seria com: Isso não é o mesmo que declarar valores padrão como seria com:
@ -112,9 +106,7 @@ Com isso, você pode rolar, vendo as opções, até encontrar o que "soa familia
Verifique esta função, ela já possui type hints: Verifique esta função, ela já possui type hints:
```Python hl_lines="1" {* ../../docs_src/python_types/tutorial003.py hl[1] *}
{!../../docs_src/python_types/tutorial003.py!}
```
Como o editor conhece os tipos de variáveis, você não obtém apenas o preenchimento automático, mas também as verificações de erro: Como o editor conhece os tipos de variáveis, você não obtém apenas o preenchimento automático, mas também as verificações de erro:
@ -122,9 +114,7 @@ Como o editor conhece os tipos de variáveis, você não obtém apenas o preench
Agora você sabe que precisa corrigí-lo, converta `age` em uma string com `str(age)`: Agora você sabe que precisa corrigí-lo, converta `age` em uma string com `str(age)`:
```Python hl_lines="2" {* ../../docs_src/python_types/tutorial004.py hl[2] *}
{!../../docs_src/python_types/tutorial004.py!}
```
## Declarando Tipos ## Declarando Tipos
@ -143,9 +133,7 @@ Você pode usar, por exemplo:
* `bool` * `bool`
* `bytes` * `bytes`
```Python hl_lines="1" {* ../../docs_src/python_types/tutorial005.py hl[1] *}
{!../../docs_src/python_types/tutorial005.py!}
```
### Tipos genéricos com parâmetros de tipo ### Tipos genéricos com parâmetros de tipo
@ -321,7 +309,7 @@ Você pode declarar que um valor pode ter um tipo, como `str`, mas que ele tamb
No Python 3.6 e superior (incluindo o Python 3.10) você pode declará-lo importando e utilizando `Optional` do módulo `typing`. No Python 3.6 e superior (incluindo o Python 3.10) você pode declará-lo importando e utilizando `Optional` do módulo `typing`.
```Python hl_lines="1 4" ```Python hl_lines="1 4"
{!../../docs_src/python_types/tutorial009.py!} {!../../docs_src/python_types/tutorial009.py!}
``` ```
@ -370,9 +358,7 @@ Isso é apenas sobre palavras e nomes. Mas estas palavras podem afetar como os s
Por exemplo, vamos pegar esta função: Por exemplo, vamos pegar esta função:
```Python hl_lines="1 4" {* ../../docs_src/python_types/tutorial009c.py hl[1,4] *}
{!../../docs_src/python_types/tutorial009c.py!}
```
O paâmetro `name` é definido como `Optional[str]`, mas ele **não é opcional**, você não pode chamar a função sem o parâmetro: O paâmetro `name` é definido como `Optional[str]`, mas ele **não é opcional**, você não pode chamar a função sem o parâmetro:
@ -388,9 +374,7 @@ say_hi(name=None) # This works, None is valid 🎉
A boa notícia é, quando você estiver no Python 3.10 você não precisará se preocupar mais com isso, pois você poderá simplesmente utilizar o `|` para definir uniões de tipos: A boa notícia é, quando você estiver no Python 3.10 você não precisará se preocupar mais com isso, pois você poderá simplesmente utilizar o `|` para definir uniões de tipos:
```Python hl_lines="1 4" {* ../../docs_src/python_types/tutorial009c_py310.py hl[1,4] *}
{!../../docs_src/python_types/tutorial009c_py310.py!}
```
E então você não precisará mais se preocupar com nomes como `Optional` e `Union`. 😎 E então você não precisará mais se preocupar com nomes como `Optional` e `Union`. 😎
@ -452,15 +436,11 @@ Você também pode declarar uma classe como o tipo de uma variável.
Digamos que você tenha uma classe `Person`, com um nome: Digamos que você tenha uma classe `Person`, com um nome:
```Python hl_lines="1-3" {* ../../docs_src/python_types/tutorial010.py hl[1:3] *}
{!../../docs_src/python_types/tutorial010.py!}
```
Então você pode declarar que uma variável é do tipo `Person`: Então você pode declarar que uma variável é do tipo `Person`:
```Python hl_lines="6" {* ../../docs_src/python_types/tutorial010.py hl[6] *}
{!../../docs_src/python_types/tutorial010.py!}
```
E então, novamente, você recebe todo o suporte do editor: E então, novamente, você recebe todo o suporte do editor:

Loading…
Cancel
Save