O operador pass Python é usado para criar blocos de código vazios e funções vazias.
Exemplos de operadores pass Python
Vamos ver alguns exemplos usando pass.
1. pass no bloco de código
Digamos que precisamos escrever uma função para remover todos os números pares de uma lista. Nesse caso, usaremos um loop for para percorrer os números na lista.
Se o número for divisível por 2 , não faremos nada. Caso contrário, nós o adicionamos à lista temporária. Por fim, retorne uma lista temporária contendo apenas números ímpares para o chamador.
O Python não suporta blocos de código vazios. Portanto, podemos usar a instrução pass aqui para omitir a operação no bloco if-condition.
def remove_evens (list_numbers): list_odds = [] para i em list_numbers: if i% 2 == 0: passe else: list_odds.append (i) return list_odds l_numbers = [1, 2, 3, 4, 5, 6] l_odds = remove_evens (l_numbers) print (l_odds)
Saída: [1, 3, 5]
Não precisamos de nenhuma operação no bloco if-condition aqui. Então, usamos a instrução pass para não fazer nada.
2. pass para uma função vazia
Não há conceito de funções abstratas em Python. Se precisarmos definir uma função vazia, não podemos escrevê-la assim.
def foo (): # TODO - implement later
Exit: IndentationError: Bloco recuado esperado
Podemos usar a instrução pass para definir uma função vazia. A função terá uma instrução, mas não fará nada.
def foo (): pass
várias instruções ?
Sim, podemos ter várias instruções walk em uma função ou bloco de código. Isso ocorre porque a instrução pass não completa a função. Seu único trabalho &fornecer uma declaração vazia.
def bar (): pass print (`bar`) pass if True: pass pass print (` True`) else: print(`False`) pass pass
Por que eu preciso disso?
- O operador pass do Python é muito útil ao definir uma função vazia ou um bloco de código vazio.
- O uso mais importante do operador pass &criar um contrato para as classes e funções que queremos implementar posteriormente. Por exemplo, podemos definir um módulo Python assim:
class EmployeeDAO: def get_emp_by_id (self, i): "" "TODO: implemente esta função mais tarde: param i: employee id: return: employee object "" "pass def delete_emp (self, i): pass # Esta função irá ler o arquivo de dados CSV de funcionários e retornará a lista de funcionários def read_csv_file (arquivo ): pass
Podemos começar a implementar. O código de terceiros conhece as funções e os métodos que implementaremos, para que possam continuar a implementá-los.