官术网_书友最值得收藏!

The changes in the syntactic

Since version 3.5, Python has three new groups of syntactic editions. The first of these groups is the introduction of keywords for describing coroutines. Python already supported coroutines, but the keywords make things clear and sometimes simpler. We'll be discussing coroutines in depth in a later chapter, so we won't go into this any further now.

The second piece of the new syntax is the introduction of the @ symbol as an infix binary operator. This means that placing an @ symbol between two sub-expressions is now a valid Python expression, just like placing a + symbol between the sub-expressions would be as shown in the following screenshot:

However, since no built-in data type supports the @ symbol operator yet, we won't be finding much use for it in this book. The intended semantic meaning of the @ symbol is that it should represent matrix multiplication and it was added to improve support for an interoperability between third-party packages that implement matrixes and matrix operations.

The third piece of new syntax is an expansion of Python's pre-existing syntax for using lists and dictionaries to provide the parameter values when invoking a function.

Before, it was possible to put an asterisk (*) before a list of values to indicate that those values should be assigned to the parameters in the same order that they appeared in the list. Here is the code example for a single asterisk:

Similarly, * before two values was used to indicate that the values in a dictionary with text string keys should be assigned to the function's parameters by name, as shown here:

The new syntax is just that we can now use more than one list or dictionary in this way, and that we can use the same asterisk and double asterisk syntax for constructing tuples, lists, dictionaries, and sets.

We mentioned earlier that while Python attaches data types to data values rather than variables, it is possible to use function annotations to describe the expected types of function parameters' return values.

主站蜘蛛池模板: 淮北市| 湘乡市| 醴陵市| 滦平县| 衡东县| 阜城县| 于都县| 绍兴县| 晴隆县| 武乡县| 平乐县| 昌吉市| 衢州市| 中山市| 神农架林区| 克东县| 威海市| 漠河县| 广灵县| 古交市| 长寿区| 五河县| 锡林浩特市| 镇原县| 长沙市| 敦煌市| 沈丘县| 阿坝县| 阳城县| 汝南县| 都匀市| 吉木萨尔县| 朝阳市| 湛江市| 宁陕县| 札达县| 白银市| 镇原县| 弋阳县| 汾阳市| 石家庄市|