Uso de python kwargs

Uso de python kwargs
Dois tipos de argumentos podem ser passados ​​para a função Python. Estes são *args (argumentos sem chave) e ** kwargs (argumentos de palavras-chave). Os caracteres curinga, '*' e '**' são usados ​​quando o número de argumentos não é definido. O ** Kwargs é usado na função para passar argumentos de comprimento de variável baseados em palavras-chave na função. Diferentes usos de Kwargs na função Python foram mostrados neste tutorial.

Exemplo 1: Leia os valores de argumento da palavra-chave

Crie um arquivo python com o seguinte script que usa ** Kwargs como o argumento na função nomeada Sumfunc (). Dois números foram passados ​​como argumentos de palavras -chave para o Sumfunc () função. O Kwargs.valores () A função foi usada no script para ler apenas os valores do argumento do argumento da palavra -chave usando o loop 'para'. O loop iterará os valores do argumento e imprimirá a soma dos valores.

#Define Função
def sumfunc (** kwargs):
#Initialize a variável
soma = 0
#Leia os valores do argumento
Para V em Kwargs.valores ():
#Calcular a soma
soma = soma + int (v)
#Print O valor da soma
print ("O resultado da soma é: %d" %soma)
#Função de Calcadas com dois argumentos
sumfunc (num1 = 10, num2 = 30)

Saída:

A saída a seguir aparecerá após a execução do script acima. A soma de 10 e 30 é 40, que foi impressa na saída.

Exemplo 2: Leia as chaves e valores do argumento da palavra-chave

Crie um arquivo python com o seguinte script que usa ** Kwargs como o argumento na função nomeada Myfunc (). Duas cordas foram passadas como argumentos de palavras -chave para o Myfunc () função. O Kwargs.Unid() A função foi usada no script para ler as chaves de argumento e os valores do argumento da palavra -chave usando o 'para' laço. O loop irá itera a chave e o valor dos argumentos e imprimirá as chaves, valores e a sequência concatenada dos valores.

#Define Função
def myfunc (** kwargs):
message = "
#Leia os nomes e o valor do argumento
Para K, V em Kwargs.Unid():
print (" %s = %s" %(k, v))
#Combine os valores da string
mensagem = mensagem + v
#Print Os valores combinados de string
Imprimir (mensagem)
#Função de Calcadas com dois argumentos de valores de string
Myfunc (msg = 'Welcome to', site = 'linuxhint')

Saída:

A saída a seguir aparecerá após a execução do script acima. O valor concatenado dos valores do argumento é 'Bem -vindo ao Linuxhint'. As chaves com valores e a string concatenada foram impressas na saída.

Exemplo 3: Uso de Kwargs com um argumento normal

Crie um arquivo python com o seguinte script, onde a função leva o argumento normal no primeiro argumento e o argumento da palavra -chave no segundo argumento. O Kwargs.valores () A função foi usada no script para ler os valores do argumento apenas do argumento da palavra -chave. Em seguida, os valores do argumento da palavra -chave foram concatenados com o valor do argumento normal e impressos posteriormente.

#Define Função
def myfunc (argumento, ** kwargs):
#Assign O valor de argumento extra
mensagem = argumento
#Leia os valores do argumento
Para V em Kwargs.valores ():
#Combine Novo valor com o valor anterior
mensagem = mensagem + v
#Add o valor de argumento extra no final da variável
mensagem = mensagem + argumento
#Print The Variable
Imprimir (mensagem)
#Função de Calcadas com dois argumentos de valores de string
Myfunc ('****', msg = 'Testando o argumento da palavra -chave')

Saída:

A saída a seguir aparecerá após a execução do script acima. O valor concatenado do argumento normal e do argumento da palavra -chave é, '**** testando o argumento da palavra -chave ****' que é impresso na saída.

Exemplo-4: Passe o argumento da palavra-chave usando um dicionário

Crie um arquivo python com o seguinte script, onde a função leva quatro argumentos normais e imprima o valor médio dos valores do argumento. Aqui, as variáveis ​​Kwargs foram declaradas como um objeto de dicionário onde as chaves são as mesmas que os nomes de variáveis ​​de argumento normal. Em seguida, a função foi chamada por ** kwargs.

#Define uma função com quatro valores de argumento
def avgfunc (var1, var2, var3, var4):
#Calcular a média dos valores do argumento
avg_value = (var1 + var2 + var3 + var4)/4
#Print os valores médios
print ("valor médio de %d, %d, %d e %d é %f" %(var1, var2, var3, var4, avg_value))
#Declare Um dicionário de quatro itens
kwargs = "var1": 20, "var2": 10, "var3": 30, "var4": 40
#Call a função com os argumentos das palavras -chave
avgfunc (** kwargs)

Saída:

A saída a seguir aparecerá após a execução do script acima. O valor médio de 20, 10, 30 e 40 é 25, que foi impresso na saída.

Exemplo 5: Uso de Kwargs, argumento normal e argumento com o valor padrão

Crie um arquivo python com o seguinte script, onde a função leva dois argumentos normais, dois argumentos com valores padrão e o argumento da palavra -chave. O valor do 1st Argumento que é passado no momento da chamada de função será impresso na primeira saída. A soma do 1st, 2nd, e 3rd Os argumentos serão impressos na segunda saída. O valor do 4º O argumento será impresso na terceira saída. O valor do argumento da palavra -chave será impresso como um dicionário na quarta saída.

"
Defina a função com argumentos indefinidos,
Argumentos definidos e argumentos de palavras -chave
"
def myfunc (var1, var2, var3 = 20, var4 = false, ** kwargs):
#Print o primeiro valor de argumento
print ("O 1º valor do argumento é", var1)
#Print A soma de três valores de argumento
print ("A soma de três valores de argumento é", var1 + var2 + var3)
#Print O 4º valor do argumento
print ("o 4º valor do argumento é", var4)
#Print os argumentos das palavras -chave
print ("Os valores dos argumentos das palavras -chave são:", Kwargs)
#Call a função
Myfunc (45, 35.89, arg1 = 11, arg2 = 22, arg3 = 66)

Saída:

A saída a seguir aparecerá após a execução do script acima.

Conclusão

Uma função pode ser chamada com um número diferente de argumentos em momentos diferentes usando Kwargs com base em fins de programação. Os usos de Kwargs Na função Python, foram explicados neste tutorial adequadamente para ajudar os usuários do Python a usá -lo em seu script quando necessário.