Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda Desafio: Argumentos Opcionais | Argumentos Posicionais e Opcionais
Tutorial de Funções em Python
Seção 2. Capítulo 4
single

single

Desafio: Argumentos Opcionais

Deslize para mostrar o menu

Lembre-se de que, ao definir uma função, é possível tornar alguns argumentos opcionais atribuindo a eles um valor padrão. Se quem chama a função não fornecer um valor, a função utiliza o valor padrão.

def add_user(name, age, role='user', status='active'):
    # Function body here
  • name e age são obrigatórios – devem sempre ser fornecidos;
  • role e status são opcionais – se omitidos, seus valores padrão serão utilizados.

Lembre-se de que argumentos opcionais devem sempre vir após todos os argumentos obrigatórios.

add_user('Alice', 28)           # role='user', status='active' by default
add_user('Bob', 25, role='admin', status='inactive')  # Overriding the defaults
12345678
def greet(name, greeting='Hello'): print(f'{greeting}, {name}!') # Using only the required argument greet('Alice') # Providing both arguments greet('Bob', greeting='Hi')
Tarefa

Deslize para começar a programar

Você está trabalhando com um sistema simples de gerenciamento de usuários. Seu objetivo é implementar uma função add_user() que adiciona novos usuários ou atualiza usuários existentes em uma lista global chamada users_db.

A users_db é uma lista de dicionários. Cada dicionário representa um usuário e tem a seguinte estrutura:

users_db = [
    {'name': 'Alice', 'age': 28, 'role': 'admin', 'status': 'active'}
]
  1. Definir uma função add_user(name, age, role='user', status='active').
  2. Verificar usuários existentes: Percorrer os dicionários em users_db. Verificar se a chave 'name' em algum dicionário corresponde ao argumento name passado para sua função.
  3. Se o usuário existir: * Atualizar o dicionário existente com os novos valores de age, role e status.
  • Retornar a string: 'User {name} updated successfully!'.
  1. Se o usuário não existir (o loop termina sem encontrar uma correspondência):
  • Criar um novo dicionário representando o usuário com os valores fornecidos de name, age, role e status.
  • Adicionar esse novo dicionário à users_db.
  • Retornar a string: 'User {name} added successfully!'.

Solução

Switch to desktopMude para o desktop para praticar no mundo realContinue de onde você está usando uma das opções abaixo
Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 2. Capítulo 4
single

single

Pergunte à IA

expand

Pergunte à IA

ChatGPT

Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo

some-alt