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

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.

主站蜘蛛池模板: 永丰县| 中西区| 尖扎县| 扶绥县| 日喀则市| 宾阳县| 安康市| 诏安县| 临夏市| 西和县| 定日县| 普宁市| 新丰县| 商城县| 喀喇沁旗| 阳曲县| 武城县| 桓仁| 伽师县| 长葛市| 阿拉尔市| 望城县| 龙南县| 南雄市| 连州市| 临夏市| 沅陵县| 类乌齐县| 商南县| 南江县| 潼关县| 泗水县| 垦利县| 神木县| 金堂县| 富裕县| 法库县| 扬中市| 安徽省| 常熟市| 岚皋县|