장음표시 사용
111쪽
Apronoa Computacao com Python Documentatiori, Versao q.
o argumento de MTito tem que ser unia string assim se qui sermos colocar outros Valores em um arqui Vo temos de converte-los para strings primetro. A manetra mais facit de fager isso e com a funcao A CT
112쪽
Apronoa Computacao com Python Documentatiori, Versao q.
113쪽
Apronoa Computacao com Python Documentatiori, Versao q.
Este exemplo abre um arqui Vo chamado MOTIA que reside em um diretorio de nome Ii Ct, o quat reside em S ATO O quai reside em UAT, o quat reside no diretorio de mais alto nivei do sistenta. chamado f. Voce nao pode usar I como parte do nome de um arqui . ela e um caractere reservado como um delimitador entre nomes de diretorios e nomes de arqui VOS. O arquivo IUSTIS ATQ/Ii Ct NOTIS contem urna lista de palavras em Ordem alfabetica, na quat a primetra palaVra e o nome de uina uni Versi clade Dinamarquesa.
114쪽
Apronoa Computacao com Python Documentatiori, Versao q.
Em cada caso a mensagem de erro tem duas partes o tipo do erro antes dos clois pontos, e especifici clades doerro depois dos clois pontos. Normal mente Python tambem exibe um 'traceback' de onde estava a execuςao do
A insinuo no CTY executa os comandos do primetro bloco. Se nao ocorrerem exceςoes, ele ignora a insinu ao ΘXOSOC. Se quatquer exceςao acontece ele executa os comandos clo ramo ΘXOSOt e continua. Podernos encapsular esta habili clade numa funςao: existe toma um nome de arqui Vo e retorna Vercladeiro se o arqui Voexiste e falso se nno existe
Voce pode usar multiplos blocos QR COOt para tralar dilarentes tipos de exceςoes. o Manual de Referentia de Python Python Referetice Manua' tem os detallies.
115쪽
Apronoa Computacao com Python Documentatiori, Versao q.
116쪽
44. 4 42.4 Tipos compostos oefinio os peto usuario
Depois de iis armos alguns tipos nativos do Python estamos pronios para criar Um tipo de clados o Ponto. Considere o concello matematico de um ponto. Em duas dimens Oes. um ponto e uni par de numeros COOrdenadas)que Sao traladas coletivamente como um objeto simples. Na notaςao matematica; pontos suo freqilientemente escritos enire parenteses com Virgula separando as COOrdenadas. Por exemplo 0. 0) representa a origem. e , ν) representa Oponto X uni clades a direita, e ν uni clades acinia da origem. Uma manetra natural para representar um ponto em Python e com clois Valores numericos em ponto nutuante. Aquestuo, intuo, e como agmpar estes clois Valores em uni o elo composio. A manetra rapida e rasteira e usar uina lista Ou uma tupla, e para algumas aplicaςoes. esso pode ser a mellior escolha f. Uma alternativa e definir iam novo tipo composio, tambem chamado tima classe. Esta abordagem en OlVe um poucomais de efforςo mas ela tem Vantagens que logo ficarao eVidentes. Eis a delini ao de unia classe
117쪽
Apronoa Computacao com Python Documentatiori, Versao q.
Podernos adicionar novos clados em unia instancia usando a notaquo de ponto t nstatis io
Esta sintaxe e similar a sintaxe para acessar uma Variavel de um modulo, como mcti . O ST T in se. UDOST CHS . Neste caso porem, estumos acessando uni item de clado de Uma instancia. Estes itens suo chamados atrihutos. O seguinte diagrama de estudo mostra o resultado destas atribuiςoes
A expressao sinat. X significa, 'Va ao objem final e pegue o Valor de XV. Neste caso atribuimos este Valora uina variavel civio nome e 'x'. Nao ha constito entre a variavel κ e o atributo M. O proposito da notaςao OU Qt O . Atridiato e identificar a quat variavel Voce esta faZendo referentia de forma que nao e ambiguo. Voce pocle usar a notaquo OU STO . RCT DUCO como parte de quatquer expressao: assim os seguintes comandos suo validos
118쪽
Aprono a Computa octo com Python Documentatiori, Versao q.
A primetra linita imprime 3. 0. 4.0): a segunda linita calcula o Valor 25. 0. E tentador imprimi r o valor do proprio objeto f incti
Ο resultado indica que finest e vina instancia da classe Ponto e mi delini da no prgrama principut mct in 80meJ0 e o identilic ador unico deste objeto. e scrito em hexadecimal base l6). Esta nao e proVmel mente a formamais informativa para mostrar um objeto Ponto. Logo Voce ira Ver como mudar iSSO Como exercicio; crie e imprima um objeto Ponto, e enta 3 use ici para imprimi r o identilic ador unico doo et 3. Tradura a forma hexadecimal para a forma decimal e confirme se suo compati Veis.
4.3 42.3 instandias Como parametro S
Quando falamos de objetos; ha uina ambigilii clade similar. Por exemplo, se clois Pontos forem os mesmos, isto querdi Zer que eles contem os mesmos clados coordenadas) ou que suo real mente o 'mesmoV objeto Para Verificar se duas referentias se referem no 'mesino' o et 3. use o operador ' Por exemplo
δ Nem todos Os idiomas tem este problema Por exemplo. em alemao ha palavras dilarentes para di ferentes senti dos de 'mesmo'. ' Mesmo carro'' nesse contexto seria ' glei che Auto . e mesma maeV seria 'selbe Mutter . J XXX LR Eu nao diria que devemos usar rara para veri sicar se clois orietos saO O mesmo. Isto e uma fallia do livro que talVeZ se origine nooriginal que falava de Iava. Em Python o operador is faZ O mesino que o ram de Iava compara referencias, e portanto serve para determinar se duas variaveis apontum para o mesmo o et O. No entanto, a O codigo acima est a correto porque em Python a implemeta pao delauit de melodo e ) e comparar o id das instantias. porem as classes list e dici, por exemplo, implementam eq comparando Os valores contidos sex isto
44.3. 42.3 instandias como parametros et q
119쪽
Apronoa Computacao com Python Documentatiori, Versao q.
Digamos que defri emos uina classe para representar uni relangulo. A questao e. quat informaquo temos de prOVer para especificar um relangulo P Para manter as coisas simples; assuma que o relangulo e orientado Venical mente Ouhori Zontal mente. nunca em Um ungulo. Ha algumas possibili clades: poderiamos especificar o centro do retangulo duas coordenadas) e seu tamanlio stargura ealtura): ou poderiamos especificar iam dos ludos e o tamantio: ou poderiamos especificar clois ludos opostos. A escolha convenci Onal e especificar o canto superior esquerdo do retangulo e o tamantio. No mente, Vamos definir Uma nOVa classe
Este codigo cria iam novo objeto Retangulo com clois atributos ponto-flutuante. Para especificar o canto superioresquerdo, podemos embutir um objeto dentro de una objetol
120쪽
Apronoa Computacao com Python Documentatiori, Versao q.
A expressao box. corner x significa, 'Va ao objeto referenciado por 'box' e selecione o atributo 'corner': enlao va noo eto 'comer' e deste, selecione o atributo de nome 'x ' A figura mostra o estudo deste objeto