Como usar métodos com listas de argumentos variáveis ​​em python

Às vezes você criar métodos em Python que podem levar um número variável de argumentos. Lidar com este tipo de situação é algo Python faz bem. Aqui estão os dois tipos de argumentos variáveis ​​que você pode criar:

  • * args: Fornece uma lista de argumentos sem nome.

  • ** kwargs: Fornece uma lista de argumentos nomeados.

Os nomes reais dos argumentos não importam, mas os desenvolvedores de Python usar * args e ** kwargs como uma convenção para que outros desenvolvedores de Python sabe que eles são uma lista variável de argumentos.

Note-se que o primeiro argumento variável tem apenas um asterisco (*) a ele associado, o que significa que os argumentos são sem nome. A segunda variável tem dois asteriscos, o que significa que os argumentos são nomeados. Os seguintes passos demonstram como utilizar ambas as abordagens para escrever um aplicativo.

  1. Abra uma janela do Python Arquivo.

    Você vê um editor no qual você pode digitar o código de exemplo.



  2. Digite o seguinte código para a janela - pressione ENTER após cada linha:

    MyClass classe: def PrintList1 (* args): para a contagem, ponto em enumerate (args): print ("{0}. {1}".format (Contagem, ponto)) def PrintList2 (** kwargs): Para Nome, Valor em kwargs.items (): print ("{0} gosta {1}".format (Name, Value)) MyClass.PrintList1 ("Vermelho", "Azul", "Verde") MyClass.PrintList2 (George ="Vermelho", Sue ="Azul", Zará ="Verde")

    Para os fins deste exemplo, você está vendo os argumentos implementadas como parte de um método de classe. No entanto, você pode usá-los com a mesma facilidade com um método de instância.

    Video: Aulas Python - 005 - Variáveis, Inteiros

    Olhe atentamente para PrintList1 () e você vê um novo método de usar um para laço para percorrer uma lista. Neste caso, o enumerar() função gera tanto uma contagem (contagem de malha) e a cadeia que foi passado para a função.

    o PrintList2 () função aceita uma entrada de dicionário. Assim como com PrintList1 (), esta lista pode ser de qualquer comprimento. No entanto, você deve processar o Unid() encontrado no dicionário para obter os valores individuais.

  3. Escolha Executar → Run Module.

    Video: 17 - Python - Listas 02 - métodos pop, remove, sort; funções len, map, etc

    As listas individuais podem ser de qualquer comprimento. Na verdade, brincando com o código para ver o que você pode fazer com ele é uma boa idéia. Por exemplo, tente misturar números e strings com a primeira lista para ver o que acontece. Tente adicionar valores booleanos. O ponto é que usando esta técnica faz com que seus métodos incrivelmente flexível, se tudo que você quer é uma lista de valores como entrada.


Publicações relacionadas