[Introduction to Udemy Python3 + Application] 53. Dictionary of keyword arguments

** * This article is from Udemy "[Introduction to Python3 taught by active Silicon Valley engineers + application + American Silicon Valley style code style](https://www.udemy.com/course/python-beginner/" Introduction to Python3 taught by active Silicon Valley engineers + application + American Silicon Valley style code style ")" It is a class notebook for myself after taking the course of. It is open to the public with permission from the instructor Jun Sakai. ** **

■ Dictionary of keyword arguments

◆ Example

keyword_augment_dict


def menu(food='beef', drink='wine'):
    print(food, drink)

menu(food='beef', drink='coffee')

result


beef coffee

First, prepare such a sample. Think about when you want to add more than just food and drink.

◆ Dictionary keyword arguments

keyword_augment_dict


def menu(**kwargs):
    print(kwargs)

menu(food='beef', drink='coffee')

result


{'food': 'beef', 'drink': 'coffee'}

By prefixing the argument passed to menu with** My arguments are made into a dictionary.

keyword_augment_dict


def menu(**kwargs):
    for k , v in kwargs.items():
        print(k, v)

menu(food='beef', drink='coffee')

result


food beef
drink coffee

I set up to pull the key and value of the created dictionary and print it.

keyword_augment_dict


def menu(**kwargs):
    for k , v in kwargs.items():
        print(k, v)

d = {
    'food': 'beef',
    'drink': 'ice coffee',
    'dessert': 'ice cream'
}
menu(**d)

result


food beef
drink ice coffee
dessert ice cream

The dictionary created with d is expanded and passed to each set of key and value bymenu (** d).

■ Simultaneous use of ordinary arguments, tuples of positional arguments, and dictionaryization of keyword arguments

◆ Simultaneous use is possible

args


def menu(fruit, *args, **kwargs):
    print(fruit)
    print(args)
    print(kwargs)

menu('banana', 'apple', 'orange', food='beef', drink='wine')

result


banana
('apple', 'orange')
{'food': 'beef', 'drink': 'wine'}

The first banana is passed to fruit as a normal argument, ʻApple and ʻorange are tupled by being passed to * args, beef and wine were dictionaryized by ** kwargs.

◆ Notes

args


def menu(fruit, **kwargs, *args):
    print(fruit)
    print(kwargs)
    print(args)

menu('banana', food='beef', drink='wine', 'apple', 'orange')

result


    def menu(fruit, **kwargs, *args):
                              ^
SyntaxError: invalid syntax

An error will occur if ** kwargs comes first and * args comes after. If you want to use them at the same time, use them in the order of ***.

Recommended Posts

[Introduction to Udemy Python3 + Application] 53. Dictionary of keyword arguments
[Introduction to Udemy Python 3 + Application] 26. Copy of dictionary
[Introduction to Udemy Python3 + Application] 52. Tupleization of positional arguments
[Introduction to Udemy Python3 + Application] 24. Dictionary type
[Introduction to Udemy Python3 + Application] 61. Dictionary comprehension
[Introduction to Udemy Python3 + Application] 50. Positional arguments, keyword arguments, and default arguments
[Introduction to Udemy Python 3 + Application] 19. Copy of list
[Introduction to Udemy Python3 + Application] 67. Command line arguments
[Introduction to Udemy Python 3 + Application] 58. Lambda
[Introduction to Udemy Python 3 + Application] 57. Decorator
[Introduction to Udemy Python 3 + Application] 56. Closure
[Introduction to Udemy Python3 + Application] 59. Generator
[Introduction to Udemy Python3 + Application] 27. How to use the dictionary
[Introduction to Udemy Python 3 + Application] Summary
[Introduction to Udemy Python3 + Application] 51. Be careful with default arguments
[Introduction to Udemy Python3 + Application] 18. List methods
[Introduction to Udemy Python3 + Application] 63. Generator comprehension
[Introduction to Udemy Python3 + Application] 28. Collective type
[Introduction to Udemy Python3 + Application] 25. Dictionary-type method
[Introduction to Udemy Python3 + Application] 33. if statement
[Introduction to Udemy Python3 + Application] 13. Character method
[Introduction to Udemy Python3 + Application] 55. In-function functions
[Introduction to Udemy Python3 + Application] 48. Function definition
[Introduction to Udemy Python 3 + Application] 10. Numerical values
[Introduction to Udemy Python3 + Application] 21. Tuple type
[Introduction to Udemy Python3 + Application] 45. enumerate function
[Introduction to Udemy Python3 + Application] 65. Exception handling
[Introduction to Udemy Python3 + Application] 11. Character strings
[Introduction to Udemy Python3 + Application] 44. range function
[Introduction to Udemy Python3 + Application] 46. Zip function
[Introduction to Udemy Python3 + Application] 8. Variable declaration
[Introduction to Udemy Python3 + Application] 29. Set method
[Introduction to Udemy Python3 + Application] 16. List type
[Introduction to Udemy Python 3 + Application] 22. Tuple unpacking
Dictionary of keyword arguments
[Introduction to Udemy Python3 + Application] 69. Import of absolute path and relative path
[Introduction to Udemy Python3 + Application] 12. Indexing and slicing of character strings
[Introduction to Udemy Python3 + Application] 23. How to use tuples
[Introduction to Udemy Python3 + Application] 60. List comprehension notation
[Introduction to Udemy Python 3 + Application] 38. When judging None
[Introduction to Udemy Python3 + Application] 40.while else statement
[Introduction to Udemy Python3 + Application] 64. Namespace and Scope
[Introduction to Udemy Python3 + Application] 43. for else statement
[Introduction to Udemy Python3 + Application] 9. First, print with print
[Introduction to Udemy Python 3 + Application] 54. What is Docstrings?
[Introduction to Udemy Python3 + Application] 14. Character substitution 15.f-strings
[Introduction to Udemy Python3 + Application] 47. Process the dictionary with a for statement
[Introduction to Udemy Python3 + Application] 35. Comparison operators and logical operators
[Introduction to Udemy Python 3 + Application] 66. Creating your own exceptions
[Introduction to Udemy Python3 + Application] 30. How to use the set
[Introduction to Udemy Python3 + Application] 68. Import statement and AS
[Introduction to Udemy Python3 + Application] 42. for statement, break statement, and continue statement
[Introduction to Udemy Python3 + Application] 39. while statement, continue statement and break statement
[Introduction to Udemy Python 3 + Application] 36. How to use In and Not
[Introduction to Udemy Python3 + Application] 32.1 When one line becomes long
Introduction of Python
[Introduction to Data Scientists] Basics of Python ♬
Introduction of Python
I want to memoize including Python keyword arguments
How to get dictionary type elements of Python 2.7
[Introduction to Python] Basic usage of lambda expressions