Skip to content

Commit 41ca232

Browse files
committed
Merge remote-tracking branch 'origin/main'
2 parents 1e567f2 + 4f5d81d commit 41ca232

File tree

4 files changed

+64
-11
lines changed

4 files changed

+64
-11
lines changed

online/cap11.adoc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -905,7 +905,7 @@ Uma percepção precoce da necessidade de strings de representação diferentes
905905
906906
907907
[role="soapbox-title"]
908-
Propriedades ajudam a reduzir custos iniciais
908+
**Propriedades ajudam a reduzir custos iniciais**
909909
910910
Nas((("attributes", "properties and up-front costs")))((("Pythonic objects", "Soapbox discussion", id="POsoap11")))((("Soapbox sidebars", "properties and up-front costs"))) primeiras versões de `Vector2d`, os atributos `x` e `y` eram públicos, como são, por default, todos os atributos de instância e classe no Python. Naturalmente, os usuários de vetores precisam acessar seus componentes. Apesar de nossos vetores serem iteráveis e poderem ser desempacotados em um par de variáveis, também é desejável poder escrever `my_vector.x` e `my_vector.y` para obter cada componente.
911911
@@ -941,7 +941,7 @@ Em Python, podemos simplesmente usar atributos públicos, sabendo que podemos tr
941941
942942
943943
[role="soapbox-title"]
944-
Proteção versus segurança em atributos privados
944+
**Proteção versus segurança em atributos privados**
945945
946946
[quote, Larry Wall, criador do Perl]
947947
____

print/xrefs/formatos.adoc

Lines changed: 59 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
==== Alvo: capítulo
66

7-
Ex cap01:
7+
Ex. do cap01:
88

99
[source, asciidoctor]
1010
----
@@ -17,7 +17,7 @@ Capítulo 2
1717

1818
==== Alvo: seção
1919

20-
Ex cap02:
20+
Ex. do cap02:
2121

2222
[source, asciidoctor]
2323
----
@@ -32,13 +32,18 @@ Seção 2.6
3232

3333
==== Alvo: capítulo
3434

35-
Ex cap.1, l.745:
35+
Ex. do cap01, l.745:
3636

3737
[source, asciidoctor]
3838
----
3939
<<ch_seq_methods>>
4040
----
4141

42+
[source, html]
43+
----
44+
<h2 id="ch_seq_methods"><a class="link" href="#ch_seq_methods">12. Métodos especiais para sequências</a></h2>
45+
----
46+
4247
Saída:
4348

4449
Capítulo 12 [vol.2, fpy.li/xyz]
@@ -47,13 +52,19 @@ Onde fpy.li/xyz direciona para:
4752

4853
https://pythonfluente.com/2/#ch_seq_methods
4954

55+
5056
==== Alvo: seção
5157

52-
Ex. cap05, l.42
58+
Ex. do cap05, l.42
5359

5460
[source, asciidoctor]
5561
----
56-
Veremos mais sobre isso na <<typeddict_sec>> (<<ch_more_types>>).
62+
Veremos mais sobre isso na <<typeddict_sec>>.
63+
----
64+
65+
[source, html]
66+
----
67+
<h3 id="typeddict_sec"><a class="link" href="#typeddict_sec">15.3. TypedDict</a></h3>
5768
----
5869

5970
Saída:
@@ -62,4 +73,46 @@ Veremos mais sobre isso na Seção 15.3 [vol.2, fpy.li/xyz].
6273

6374
Onde fpy.li/xyz direciona para:
6475

65-
https://pythonfluente.com/2/#typeddict_sec
76+
https://pythonfluente.com/2/#typeddict_sec
77+
78+
79+
=== Alvo: exemplo
80+
81+
Ex. do cap03, l.825
82+
83+
[source, asciidoctor]
84+
----
85+
O <<environment_class_ex>> mostra uma subclasse
86+
----
87+
88+
[source, html]
89+
----
90+
<div id="environment_class_ex" class="exampleblock">
91+
<div class="title">Exemplo 349. <em>lis.py</em>: a classe <code>Environment</code></div>
92+
<div class="content">
93+
<div class="listingblock">
94+
<div class="content">
95+
<pre class="highlight"><code class="language-py" data-lang="py">class Environment(ChainMap[Symbol, Any]):
96+
"A ChainMap that allows changing an item in-place."
97+
98+
def change(self, key: Symbol, value: Any) -&gt; None:
99+
"Find where key is defined and change the value there."
100+
for map in self.maps:
101+
if key in map:
102+
map[key] = value # type: ignore[index]
103+
return
104+
raise KeyError(key)</code></pre>
105+
</div>
106+
</div>
107+
</div>
108+
</div>
109+
----
110+
111+
Saída:
112+
113+
O Exemplo 349 [cap.18, vol.2, fpy.li/xyz].
114+
115+
Onde fpy.li/xyz direciona para:
116+
117+
https://pythonfluente.com/2/#environment_class_ex
118+

vol1/cap05.adoc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ Entretanto, `TypedDict` não cria classes concretas que possam ser instanciadas.
3939
Ela é apenas a sintaxe para escrever dicas de tipo para parâmetros de função e
4040
variáveis que aceitarão valores de mapeamentos como registros,
4141
enquanto suas chaves serão os nomes dos campos.
42-
Veremos mais sobre isso na <<typeddict_sec>> (<<ch_more_types>>).
42+
Veremos mais sobre isso na <<typeddict_sec>>.
4343
====
4444

4545

@@ -930,7 +930,7 @@ Valores default mutáveis são a fonte mais comum de bugs entre desenvolvedores
930930
Em definições de função, um valor default mutável é facilmente corrompido,
931931
quando uma invocação da função modifica o default,
932932
mudando o comportamento nas invocações posteriores—um tópico que
933-
vamos explorar na <<mutable_default_parameter_sec>> (<<ch_refs_mut_mem>>).
933+
vamos explorar na <<mutable_default_parameter_sec>>.
934934
Atributos de classe são frequentemente usados como valores default de atributos para instâncias,
935935
inclusive em classes de dados.
936936
E o `@dataclass` usa os valores default nas dicas de tipo para gerar parâmetros com defaults no

vol1/cap08.adoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1720,7 +1720,7 @@ um substantivo mais comum e explícito que também significa _limite_.
17201720
====
17211721

17221722
O construtor de `typing.TypeVar` tem outros parâmetros opcionais (`covariant` e `contravariant`)
1723-
que envolvem conceitos avançados que vamos deixar para o <<ch_more_types>>, <<variance_sec>>.
1723+
que envolvem conceitos avançados que vamos deixar para a <<variance_sec>>.
17241724

17251725
Agora vamos concluir essa introdução a `TypeVar` com `AnyStr`.
17261726

0 commit comments

Comments
 (0)