Forcing keyword-only arguments with the * separator
There are some situations where we have a large number of positional parameters to a function. Perhaps we've followed the Designing functions with optional parameters recipe and this leads us to design a function with so many parameters that it gets confusing.
Pragmatically, a function with more than about three parameters can be confusing. A great deal of conventional mathematics seems to focus on one and two parameter functions. There don't seem to be too many common mathematical operators that involve three or more operands.
When it gets difficult to remember the required order for the parameters, there are too many parameters.
Getting ready
We'll look at a function that has a large number of parameters. We'll use a function which prepares a wind-chill table and writes the data to a CSV format output file.
We need to provide a range of temperatures, a range of wind speeds, and information on the file we'd like to create. This is a lot of...