-
Introspecção e reflexão são propriedades de sistemas orientados a objetos que qualificam a existência de mecanismos para descobrir e alterar, em tempo de execução, informações estruturais sobre um programa e objetos existentes neste.
Python possui tanto características introspectivas quanto reflexivas. Permite obter em tempo de execução informações a respeito do tipo dos objetos, incluindo informações sobre a hierarquia de classes. Preserva também metadados que descrevem a estrutura do programa sendo executado, e permitindo que se estude como está organizado este sem a necessidade de ler o seu código-fonte.
Algumas funções e atributos são particularmente importantes neste sentido, e são apresentadas nesta seção:
dir(obj): esta função pré-definida lista todos os nomes de variáveis definidos em um determinado objeto; foi apresentada anteriormente como uma forma de obter as variáveis definidas em um módulo, e aqui pode ser descrita em sua glória completa: descreve o conteúdo de qualquer objeto Python, incluindo classes e instâncias.
obj.__class__: este atributo da instância armazena o seu objeto classe correspondente.
obj.__dict__: este atributo de instâncias e classes oferece acesso ao seu estado local.
obj.__module__: este atributo de instâncias e classes armazena uma string com o nome do módulo do qual foi importado.
classe.__bases__: esta atributo da classe armazena em uma tupla as classes das quais herda.
classe.__name__: este atributo da classe armazena uma string com o nome da classe
Fonte: http://www.async.com.br/projects/python/pnp/introspection.html
-
Sobre as alternativas erradas:...
A - Python e uma linguagem interpretada, que também pode ser compilada
B - Possui tipagem dinâmica (tipos não precisam ser declarados) só precisam ser inicializados
D - Listas são um tipo de sequência que são grupos de objetos ordenados e de tamanho finitos. Não existe restrição quanto a diversidade de tipo de objetos agrupados
E - String é uma sequencia imutável, mas não possui restrição de tamanho
-
Na alternativa D, além de estar errado dizer que listas só podem armazenar elementos do mesmo tipo, o trecho que diz que os índices iniciam em 1 também está errado, uma vez que o primeiro índice é o 0.
-
Quanto ao Phyton:
1- Suporta maniputação de exceções;
2 - Eficiente gerenciameto de memória - Garbage Collection
3 - É uma linguagem interpretada
4- Free
5- Traz consigo inúmeras bibliotecas, além de possibilitar integração com outras
6- Utiliza uma linha em branco como definição de blocos;
7- Fácil entendimento quanto a projeção de: construtores, loops , estruturas condicionais e arrays, dentre outros recursos
8- Implementada em C e extensível as suas bibliotecas
Fonte: Livro: Python RAD - Rapid Application Development - Thiago Hernandes de Souza Ed: Moderna
-
Resposta Letra C
Em , introspecção ou introspecção de tipos, é a habilidade de um programa de examinar o tipo ou propriedades de um em . A introspecção não deve ser confundida com , que vai um pouco mais adiante e é a habilidade de um programa para manipular os valores, metadados, propriedades e/ou funções de um objeto em tempo de execução.
Fonte: https://pt.wikipedia.org/wiki/Introspec%C3%A7%C3%A3o_(computa%C3%A7%C3%A3o)
-
Questão conceitual a respeito de Python. Iremos analisar cada uma das alternativas.
⦁ É uma linguagem compilada, ou seja, o código-fonte de um programa é lido pelo compilador, que cria um arquivo binário, executável diretamente pelo hardware.
Errado. É uma linguagem interpretada que, após compilada, é transformada em bytecode que por sua vez é interpretado por uma máquina virtual. Não é executável diretamente pelo hardware.
⦁ É uma linguagem fortemente tipada, ou seja, é preciso declarar variáveis e seus tipos.
Python é sim uma linguagem fortemente tipada. Mas isso não significa que seja necessário declarar os tipos das variáveis. Isso não é necessário porque os tipos são descobertos em tempo de execução, durante a interpretação linha a linha do script Python. Alternativa errada.
⦁ Suporta funcionalidades comuns na orientação a objetos: herança, herança múltipla, polimorfismo, reflexão e introspecção.
Certo. O Python suporta todas essas funcionalidades: herança, herança múltipla, polimorfismo, reflexão e introspecção. Herança é quando uma classe é uma especialização da classe mãe. Herança múltipla é quando uma classe é filha de mais de uma classe-mãe. Isso é possível em Python. Polimorfismo é quando o método a ser executado depende da hierarquia de herança. Reflexão é quando é possível obter atributos de objetos passados como parâmetros de uma função. E introspecção é a possibilidade de saber o tipo de um objeto em tempo de execução.
⦁ Uma lista em Python é um conjunto de valores acessados por um índice numérico, inteiro, começando em 1. Assim como em outras linguagens, a lista pode armazenar apenas valores de um mesmo tipo.
Errado por 2 motivos. O índice inicial da lista em Python é 0 (zero). Além disso, a lista pode conter valores de tipos diferentes.
⦁ Uma String Python á uma sequência imutável, alocada estaticamente, com restrição de tamanho.
Errado. Strings em Python são imutáveis e têm restrição de tamanho. Mas elas não são alocadas estaticamente, mas sim dinamicamente.
Resposta: C
-
Questão conceitual a respeito de Python. Iremos analisar cada uma das alternativas.
(a) É uma linguagem compilada, ou seja, o código-fonte de um programa é lido pelo compilador, que cria um arquivo binário, executável diretamente pelo hardware.
Errado. É uma linguagem interpretada que, após compilada, é transformada em bytecode que por sua vez é interpretado por uma máquina virtual. Não é executável diretamente pelo hardware.
(b) É uma linguagem fortemente tipada, ou seja, é preciso declarar variáveis e seus tipos.
Python é sim uma linguagem fortemente tipada. Mas isso não significa que seja necessário declarar os tipos das variáveis. Isso não é necessário porque os tipos são descobertos em tempo de execução, durante a interpretação linha a linha do script Python. Alternativa errada.
(c) Suporta funcionalidades comuns na orientação a objetos: herança, herança múltipla, polimorfismo, reflexão e introspecção.
Certo. O Python suporta todas essas funcionalidades: herança, herança múltipla, polimorfismo, reflexão e introspecção. Herança é quando uma classe é uma especialização da classe mãe. Herança múltipla é quando uma classe é filha de mais de uma classe-mãe. Isso é possível em Python. Polimorfismo é quando o método a ser executado depende da hierarquia de herança. Reflexão é quando é possível obter atributos de objetos passados como parâmetros de uma função. E introspecção é a possibilidade de saber o tipo de um objeto em tempo de execução.
(d) Uma lista em Python é um conjunto de valores acessados por um índice numérico, inteiro, começando em 1. Assim como em outras linguagens, a lista pode armazenar apenas valores de um mesmo tipo.
Errado por 2 motivos. O índice inicial da lista em Python é 0 (zero). Além disso, a lista pode conter valores de tipos diferentes.
(e) Uma String Python á uma sequência imutável, alocada estaticamente, com restrição de tamanho.
Errado. Strings em Python são imutáveis e têm restrição de tamanho. Mas elas não são alocadas estaticamente, mas sim dinamicamente.
Resposta: C
-
PHYTON - Suporta funcionalidades comuns na orientação a objetos: herança, herança múltipla, polimorfismo, reflexão e introspecção.
-
Python e R são:
- Fortemente tipadas = são linguagens em que se deve fazer operações com a necessidade da realização de cast; e
- Dinamicamente tipadas = são linguagens em que o tipo de uma variável pode ser alterado durante a execução do código.
-
A- Não é compilada, ela é interpretada
B- É de tipagem forte, mas o significado a frente não tem a ver com isso
C - Certo, ele é multifuncionalidade e multiparadigma
D - Podem existir diversos tipos
E - Python tem como característica ser dinâmico, ou seja, é possível modificar.
-
Isso que eu chamo de questão recorrente em provas (literalmente)! Outra questão:
Quando pedem seu dever de redação, só pra ter uma ideia, e você fala "só não vai copiar!": -> Q520668
Achei que estava em um deja vu, kkkk. Gabarito C.
-
Questão conceitual a respeito de Python. Iremos analisar cada uma das alternativas.
(a) É uma linguagem compilada, ou seja, o código-fonte de um programa é lido pelo compilador, que cria um arquivo binário, executável diretamente pelo hardware. (ERRADO) É uma linguagem interpretada que, após compilada, é transformada em bytecode que por sua vez é interpretado por uma máquina virtual. Não é executável diretamente pelo hardware.
(b) É uma linguagem fortemente tipada, ou seja, é preciso declarar variáveis e seus tipos. (ERRADO) Python é sim uma linguagem fortemente tipada. Mas isso não significa que seja necessário declarar os tipos das variáveis. Isso não é necessário porque os tipos são descobertos em tempo de execução, durante a interpretação linha a linha do script Python. Alternativa errada.
(c) Suporta funcionalidades comuns na orientação a objetos: herança, herança múltipla, polimorfismo, reflexão e introspecção. (CERTO) O Python suporta todas essas funcionalidades: herança, herança múltipla, polimorfismo, reflexão e introspecção.
Herança: é quando uma classe é uma especialização da classe mãe.
Herança múltipla: é quando uma classe é filha de mais de uma classe-mãe. Isso é possível em Python.
Polimorfismo: é quando o método a ser executado depende da hierarquia de herança.
Reflexão: é quando é possível obter atributos de objetos passados como parâmetros de uma função.
Introspecção: possibilidade de saber o tipo de um objeto em tempo de execução.
(d) Uma lista em Python é um conjunto de valores acessados por um índice numérico, inteiro, começando em 1. Assim como em outras linguagens, a lista pode armazenar apenas valores de um mesmo tipo. (ERRADO) Errado por 2 motivos. O índice inicial da lista em Python é 0 (zero). Além disso, a lista pode conter valores de tipos diferentes.
(e) Uma String Python á uma sequência imutável, alocada estaticamente, com restrição de tamanho. (ERRADO) Strings em Python são imutáveis e têm restrição de tamanho. Mas elas não são alocadas estaticamente, mas sim dinamicamente.