terça-feira, 31 de março de 2015

estrutura do Python

Quando um nome é referenciado a um objeto em um programa o espaço de nome (namespaces) serão procurados na seguinte ordem para encontrar a ligação para esse nome: espaço de nomes local primeiramente, então o espaço de nome global, e depois o espaço de nome interno. Este processo é chamado de regra de LGB.

Python fornece somente um método da passagem de parâmetro o método de passagem-por-referência.

Os argumentos especificados em uma chamada do método são chamados parâmetros reais.

Os argumentos que aparecem na definição do método são chamados parâmetros formais.

O primeiro argumento do método é sempre referenciado no início do processo.

Um método que acessa uma instância mas não modifica a instância é chamado de accessor ou acessor. Um método que modifica uma instância é um mutator ou modificador. Um property é um atributo de classe que promove o método de acesso e/ou método modificador.


Referências

[1] http://wiki.python.org.br/ProgramacaoOrientadaObjetoPython
[2] http://pythonclub.com.br/introducao-classes-metodos-python-basico.html
[3] http://www3.ifrn.edu.br/~jurandy/fdp/doc/aprenda-python/capitulo_14.html

domingo, 29 de março de 2015

Módulos em Python

Dentro de um módulo Python, o nome do módulo está disponível na variável global __name__.

Com o comando import importa-se o módulo: import time

coloca somente o módulo na tabela de símbolos atual. não seus métodos todos.

time.time()

cada módulo tem sua própria tabela de símbolos privada que é global para todos os métodos do módulo.

para acessar os atributos de outro método usa-se: nomedomodulo.nomedoitem

o comando from classe import métodosX importa diretamente para a tabela de símbolos. logo teremos acesso com o nome métodosX.

from classe import * somente os sublinhados que não.

pode ser usado tanto como um script (python nome.py <argumentos>) quanto como um módulo (import nome) com:
if __name__ == "__main__":
    import sys
    fib(int(sys.argv[1]))

python nome.py 50

módulo.pacote
pacotes livram os autores de se preocupem com colisão entre os nomes de seus módulos e os nomes de módulos de outros autores.
pacotes: coleção de módulos

Os arquivos __init__.py são necessários para que Python trate os diretórios como pacotes

import nome.nome.nome
from nome.nome import nome
from nome.nome.nome. import nome

from package import item
import item.subitem.subsubitem







Fonte: http://turing.com.br/pydoc/2.7/tutorial/modules.html