50 Questões Básicas de Python

Python é uma das línguas mais e amplamente utilizadas no mundo da Programação, desenvolvimento Web, Inteligência Artificial e Análise de Dados.

1. O que é Python e por que tão popular?

Python é uma linguagem de programação interpretada, de alto nível e de uso geral. A filosofia de design do Python enfatiza a legibilidade de código. É popular porque tem uma sintaxe simplificada que dá mais ênfase à linguagem natural.

2. Por que a execução de Python é lenta e como podemos melhorá-la?

A razão por trás do código Python ser lento é porque é uma linguagem interpretada. Seu código é interpretado no tempo de execução em vez de ser compilado para uma língua nativa. Para melhorar a velocidade do código Python, podemos usar CPython, Numba em vez de python puro.

1. Reduz pegadas de memória.

2. Utiliza funções e bibliotecas incorporadas.

3. Move o cálculo Fora do loop.

4. Mantém a base de código pequena.

5. Evita loops indesejados

3. Quais são as características do Python?

1. Fácil de Codificar

2. Língua open source

3. Linguagem de alto nível

4. Fácil de Depurar

5. Suporte OOPS

6. Grande coleção de bibliotecas padrão e módulos de terceiros

7. Recurso Extensível (podemos escrever código python em c e c++)

8. Estrutura de dados fácil de usar

4. Quais são as aplicações do Python?

1. Desenvolvimento Web

2. Desenvolvimento de GUI de desktop

3. Inteligência Artificial e Aprendizado de Máquina

4. Desenvolvimento de Software

5. Desenvolvimento de Aplicativos de Negócios

6. Aplicativo baseado no console

7. Teste de software

8. Automação Web

9. Aplicativo baseado em áudio ou vídeo

10. Aplicativo de processamento de imagens

5. Limitações do Python?

6. Como o Código Python é executado?

Primeiro, o Intérpretador lê o código python e verifica se há qualquer erro de sintaxe ou formatação. se algum erro for encontrado, então ele interrompe a execução.

Sem erros encontrados, então o intérpretador traduz o código python em sua forma equivalente ou código de byte. em seguida, o código byte é enviado para a máquina virtual python (PVM). Aqui novamente, o código python é executado e se algum erro encontrado, então a execução é interrompida caso contrário, o resultado é mostrado na janela de saída.

Execução de código Python

7. Como a memória é gerenciada em python?

Todos os objetos python e estruturas de dados estão localizados em um monte privado. A alocação do monte privado é cuidada pelo gerenciador de memória Python. Python também tem um coletor de lixo embutido que recicla memória não usada e libera a memória e a disponibiliza para o espaço disponível.

8. Quais as estruturas de dados embutidas em Python?

Existem quatro principais estruturas de dados em python.

1. Listas: Lista é uma coleção de itens de dados heterogêneos de inteiros a strings até mesmo outra lista. As listas são mutáveis. listas fazem o trabalho da maioria das estruturas de dados de coleta encontradas em outras línguas. Uma lista é definida entre parênteses. Ex: a = [1,2,3,4]

2. Conjuntos: Um conjunto é uma coleção de elementos únicos não ordenados. Definir operações como união, intersecção e diferença pode ser aplicada a um conjunto. Contudo, conjuntos imutáveis: Ex: a = {1,2,3,4,}

3. Tuple: As tuplas python funcionam exatamente como as listas python, exceto que são imutáveis. usar para definir uma tupla. Ex: a = (1,2,3,4)

4. Dicionário: Dicionário é uma coleção de pares de valor-chave. é semelhante ao mapa hash em outras línguas. Em Chaves de Dicionário são objetos únicos e imutáveis. Ex: a = {‘numbers’ : [1,2,3,4]}

9. Operadores em python

// (Divisão de Piso): É um operador de divisão que devolve a parte inteira da divisão. Ex: 5//2=2

% (Módulo): Retorna o restante da divisão. Ex: 5%2=1

** (Potência): Realiza um cálculo exponencial no operador. a**b significa um elevado ao poder de b: Ex: 5**2=25, 5** 3 = 125

10. “” e ‘ ‘ são a mesma coisa?

Não.

11. Diferença entre append, insert e extend em Python?

  • append: Ele é usado para adicionar novos elementos no final da lista.
  • insert: É usado para adicionar um elemento em uma posição específica na lista.
  • extend: É usado para estender a lista adicionando uma nova lista.
numbers = [1,2,3,4,5]numbers.append(6)
print(numbers)
> [1,2,3,4,5,6]
numbers.insert(2,7) ## insert(position,value)
print(numbers)
> [1,2,7,4,5,6]
numbers.extend([7,8,9])
print(numbers)
> [1,2,7,4,5,6,7,8,9]
numbers.append([4,5])
> [1,2,7,4,5,6,7,8, 9,[4,5]]

12. Como break, continue e pass funcionam?

  • break: Faz com que o Programa saia do loop quando a condição é atendida.
  • continue: Ele retorna o controle para o início do loop. faz com que o programa pule todas as declarações restantes na iteração atual do loop.
  • pass: Ele simplesmente faz com que o programa passe todas as declarações restantes sem executar.

13. Como usar remove, del e pop em python?

  • remove: Ele remove o primeiro valor de correspondência na lista. ele toma o valor como parâmetro.
  • del: Ele exclui elementos usando um índice. ele não retorna nenhum valor.
  • pop: ele remove o elemento superior da lista. ele retorna o elemento superior da lista.
numbers = [1,2,3,4,5]numbers.remove(5)
> [1,2,3,4]
del numbers[0]
> [2,3,4]
numbers.pop()
> 4

14. o que é uma declaração de mudança. Como criar uma instrução de switch em python?

Uma instrução de switch é um mecanismo de controle de seleção que permite que uma variável seja testada contra uma lista de valores. Cada valor em uma instrução de switch é chamado de caso. Em python podemos criar uma instrução de switch personalizada.

switcher = {
1: "January",
2: "February",
3: "March",
4: "April",
5: "May",
6: "June",
7: "July",
8: "August",
9: "September",
10: "October",
11: "November",
12: "December"
}
month = int(input())
print(switcher.get(month))> 3
march

15. Aplique a função de range em python com um exemplo?

range: a função de alcance retorna uma série de sequências do ponto de partida para um ponto final. Há mais um parâmetro de terço que é o passo usado para definir etapas na faixa:

for i in range(5):     ## number
print(i)
> 0,1,2,3,4
for i in range(1,5): ## (start,end)
print(i)
> 1,2,3,4
for i in range(0,5,2): ## (start,end,step)
print(i)
>0,2,4

16. Diferença entre == e é operador em píton?

Compara a igualdade de dois objetos ou valores. um operador é usado para verificar se os dois objetos pertencem ao mesmo objeto de memória.==is

lst1 = [1,2,3]
lst2 = [1,2,3]
lst1 == lst2
> True
lst1 is lst2
> False ## They Both Belong to different memory object

17. Como alterar o tipo de dados de uma lista?

Para alterar o tipo de dados de uma lista para uma tupla podemos usar o mesmo para definir:

lst = [1,2,3,4,2]set(lst)    ## {1,2,3,4}
tuple(lst) ## (1,2,3,4,2)

18. Quais são as diferentes maneiras de comentar em python?

Em Python, podemos comentar de duas maneiras.

  • 1. ‘’’ ‘’’ para vários comentários.
  • 2. ## para comentário de linha única.

19. Diferença entre != e isnot

Um retorna verdadeiro se ambas as variáveis ou objetos não forem iguais em valor. O outro verifica se ambos os objetos são iguais objeto de memória ou não.

lst1 = [1,2,3,4]
lst2 = [1,2,3,4]
lst1 != lst2
>False
lst1 is not lst2
>True

20. Python tem uma função principal?

Sim, ela é executada automaticamente sempre que executamos um script python.

21. What is a lambda function?

Lambda é uma função de linha única sem nome, que pode ter n número de argumentos. Também é chamada de função anônima.

a = lambda x,y : x+yprint(a(5,6))
> 11

22. Diferença entre iteráveis e iteradores?

iterável: Uma iterável é um objeto, que se pode iterar sobre. No caso de dados inteiros iteráveis são armazenados na memória de cada vez.

iterador: um iterador é um objeto usado para iterar sobre um objeto. ele só está sendo inicializado ou armazenado na memória quando é chamado. iteradores tem usando quais elementos são obtidos do objeto.

### List is an iterable
lst = [1,2,3,4,5]
for i in lst:
print(i)
### iterator
lst1 = iter(lst)
next(lst1)
>1
next(lst1)>2
for i in lst1:
print(i)
>3,4,5

23. O que é função map em python?

Uma função de mapeamento retorna um objeto de mapa após aplicar uma determinada função a cada item do objeto iterável.

24. Filtro em python?

Uma função de filtro usada para filtrar valores de uma iterável com base em alguma condição.

lst = [1,2,3,4,5,6,7,8,9,10] ##iterable
def even(num):
if num%2==0:
return num
list(filter(even,lst)) ## filter all even numbers
---------------------------------------------
[2, 4, 6, 8, 10]

25. Explicar o uso da função de redução reduce() em python?

A função reduce aceita uma função e uma sequência e retorna um único valor após o cálculo.from functools import reduce
a = lambda x,y:x+y

print(reduce(a,[1,2,3,4]))
> 10

26. O que é Pickling e Unpickling?

  • Pickling é o processo em que uma hierarquia de objeto python é convertida em um fluxo de byte
  • Unpickling é o processo inverso no qual um fluxo de byte é convertido em um objeto.

27. O que são *args e **kwargs em python?

  • args: usado quando não temos certeza sobre o número de argumentos a serem passados para uma função.
def add(*num): 
sum = 0
for val in num:
sum = val+sum
print(sum)add(4,5)
add(7,4,6)
add(10,34,23)
---------------------
9
17
57
  • kwargs: é usado quando queremos passar um dicionário como argumento para uma função.
def intro(**data):
print("\nData type of argument:",type(data))
for key, value in data.items():
print("{} is {}".format(key,value))
intro(name="alex",Age=22, Phone=1234567890)
intro(name="louis",Email="a@gmail.com",Country="Wakanda", Age=25)
--------------------------------------------------------------Data type of argument: <class 'dict'>
name is alex
Age is 22
Phone is 1234567890
Data type of argument: <class 'dict'>
name is louis
Email is a@gmail.com
Country is Wakanda
Age is 25

28. Explicar sub(), subn() e dividir() métodos de re módulo em python?

  • split(): Este método dividirá a sequência sempre que o padrão corresponder.
  • sub(): Este método é usado para substituir um certo padrão na string por alguma outra sequência ou sequência.
  • subn(): é semelhante ao sub em todos os sentidos, exceto que retorna uma tupla com a contagem de substituição total e a nova sequência como saída.
import re
string = "There are two ball in the basket 101"
re.split("\W+",string)
---------------------------------------
['There', 'are', 'two', 'ball', 'in', 'the', 'basket', '101']

re.sub("[^A-Za-z]"," ",string)
----------------------------------------
'There are two ball in the basket'

re.subn("[^A-Za-z]"," ",string)
-----------------------------------------
('There are two ball in the basket', 10)

29. O que são geradores em python?

Um gerador é definido como uma função normal. sempre que precisar o gerador produzirá valores usando a palavra-chave. se uma função contiver a palavra-chave de rendimento, a função se tornará automaticamente um gerador.yield

## A program to demonstrate the use of
# generator object with next()
# A generator function
def Fun():
yield 1
yield 2
yield 3
# x is a generator object
x = Fun()
print(next(x))
-----------------------------
1
print(next(x))
-----------------------------
2

30. Como reverter uma sequência em python usando indexação.

string = 'hello'
string[::-1]
>'
olleh'

31. Qual é a diferença entre classe e objeto?

Classe: Uma classe considera como um projeto para objetos. A primeira corda dentro da classe é chamada de sequência doc que contém breve descrição sobre a classe. Em python, uma classe é criada usando palavra-chave. uma classe contém variáveis e os membros combinam chamados membros da classe.

Ex: Projeto de casa é uma classe

Objeto: Um objeto é uma entidade da vida real. em python para criar um objeto para uma classe que podemos usar objeto da classe e acessar todos os membros de uma classe e manipulá-los.

embers of a class and manipulate them.obj = CLASS_NAME()obj=num()

class Person:
``` This is a Person Class```
age = 10 ## varable
def greets(self):
print('Hello')
obj = Person() ## object
print(obj.greet)
----------------------------------------
Hello

32. O que é self em classes Python?

Self representa a instância de uma classe. Usando a palavra-chave podemos acessar os atributos e métodos de uma classe em python. É necessário usar self em python porque python não tem uma sintaxe explícita para declarar variáveis.

33. Qual é o uso de _init_ em Python?

É um método reservado em classes python. É automaticamente chamado sempre que o código é executado. Uusado principalmente para inicializar todas as variáveis da classe.

34. O que é herança em Python ?

A herança permite que uma classe ganhe todos os membros e atributos de outra classe. A herança fornece reusabilidade de código facilita a criação e manutenção de um aplicativo. A classe da qual estamos herdando é chamada de super-classe e a classe herdada é chamada de classe derivada/infantil.

35. Nomear os pilares do OOPS

36. O que você entende por abstração?

Abstração é o processo de mostrar apenas características essenciais ou necessárias de um objeto para o mundo exterior e esconder todas as outras informações irrelevantes.

37. O que é encapsulamento?

Encapsulamento significa embrulhar dados e funções de membros em uma única unidade. Também alcança os conceitos de ocultação de dados.

38. O que é polimorfismo?

Polimorfismo significa “Muitas Formas”. Uma subclasse pode definir seu próprio comportamento único e ainda compartilhar as mesmas funcionalidades ou comportamento de sua classe pai/base.

40. Python suporta múltiplas heranças?

Herança múltipla significa que uma classe pode ser derivada de mais de uma classe de pais. Python suporta várias heranças.

41. Para que é a função zip usada em python?

A função zip pega iteráveis, agrega-os em uma tupla, e devolve-o. A sintaxe da função zip() é zip(*iterables)

sintaxe da função zip() é zip(*iterables)

numbers = [1, 2, 3]
string = ['one', 'two', 'three']
result = zip(numbers,string)
print(set(result))
-------------------------------------
{(3, 'three'), (2, 'two'), (1, 'one')}

42. Função map() em Python?

Ans: A função mapa retorna um objeto de mapa dos resultados depois de aplicar a função dada a cada item de uma determinada lista de curtidas, tupla, etc. também podemos passar vários objetos iteráveis ao mesmo tempo na função map().

sintaxe: map(fun,iter)

numbers = (1, 2, 3, 4)
result = map(lambda x: x + x, numbers)
print(list(result))

43. O que são decoradores em píton?

Decorador é uma característica interessante em python. Ele é usado para adicionar funcionalidade a um código existente. Também é chamada de metaprogramação porque uma parte do programa tenta modificar outra parte do programa no momento da compilação.

def addition(func):
def inner(a,b):
print("numbers are",a,"and",b)
return func(a,b)
return inner@addition
def add(a,b):
print(a+b)
add(5,6)---------------------------------
numbers are 5 and 6
sum: 11

Perguntas de programação

44. escrever um programa para encontrar a maior palavra em um arquivo de texto?

def longest_word(filename):
with open(filename, 'r') as infile:
words = infile.read().split()
max_len = len(max(words, key=len))
return [word for word in words if len(word) == max_len]print(longest_word('test.txt'))
----------------------------------------------------
['comprehensions']

45. Escrever um programa em Python para verificar se uma sequência é um Palíndromo.

a = input("Enter The sequence")
ispalindrome = a == a[::-1]
ispalindrome
>True

46. Escrever um programa para imprimir as dez primeiras ocorrências da série Fibonacci?

fibo = [0,1]
[fibo.append(fibo[-2]+fibo[-1]) for i in range(8)]
fibo
> [0, 1, 1, 2, 3, 5, 8, 13, 21, 34]

47. Escrever um programa para contar a frequência de palavras em um arquivo?

from collections import Counter
def word_count(fname):
with open(fname) as f:
return Counter(f.read().split())print(word_count("test.txt"))

48. Escrever um Programa para imprimir todos os números primos em uma determinada sequência?

lower = int(input("Enter the lower range:"))
upper = int(input("Enter the upper range:"))
list(filter(lambda x:all(x % y != 0 for y in range(2, x)), range(lower, upper)))
-------------------------------------------------
Enter the lower range:10
Enter the upper range:50
[11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47]

49. Escrever um programa para verificar se um número é Armstrong ou não?

num = int(input("Enter the number:\n"))
order = len(str(num))
sum = 0
temp = num
while temp > 0:
digit = temp % 10
sum += digit ** order
temp //= 10
if num == sum:
print(num,"is an Armstrong number")
else:
print(num,"is not an Armstrong number")

50. Escrever um one-liner em python para obter todos os números pares e ímpares de uma determinada lista?

a = [1,2,3,4,5,6,7,8,9,10]
odd,
even = [el for el in a if el % 2==1],
[el for el in a if el % 2==0]
print(odd,even)
> ([1, 3, 5, 7, 9], [2, 4, 6, 8, 10])

Composing a repository of books (i bought), authors (i follow) & blogs (direct ones) for my own understanding.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store