Numpy welcome the largest version update, add function annotation and other functions, support Python 3.7+

The heart of machine 2021-02-23 13:25:32
numpy welcome largest version update

Almost Human reports

edit : Chen Ping 、 Du Wei

NumPy 1.20.0 Version Online , The latest highlights include NumPy Function Comments 、 Provide sliding window view for array, etc .

As Python An extended library of language ,NumPy Support a large number of dimension arrays and matrix operations , It also provides a large number of mathematical function libraries for array operations . Since the first version came online ,NumPy Has become a Python The expansion package of Scientific Computing . Now , In computing multidimensional arrays and large arrays , It's the most widely used . Besides , It also provides multiple functions , It's very efficient to operate arrays , It can also be used to implement advanced mathematical operations .

In recent days, ,NumPy There's an update .NumPy Official expression ,NumPy v1.20 It's the largest version update yet , total 184 Three developers contributed about 684 strip PR, New type comment 、 Sliding window view and other functions .

New version support Python 3.7-3.9, But does not support Python 3.6. The main highlights are as follows :

  • NumPy Function Comments ;
  • expand SIMD Using range , promote ufuncs(Universal Functions) Execution speed of ;
  • Preparation for changing data types and casting implementations , In order to provide a simpler way to extend data types ;
  • Document improvement , Including about 185 individual PR Merge ;
  • About removing Python 2.7 Further cleaning up of (cleanups), This can improve the readability of the code and eliminate the technical burden ;
  • For the coming Cython 3.0 Provide initial support .

New functions

Newly released NumPy 1.20.0 Version includes the following three new functions :

(1)random.Generator Class has a new function permuted. New functions and shuffle and permutation Different , The subarray of the given axis index is converted . for example , Now you can convert the rows or columns of a two-dimensional array ;

(2)sliding_window_view by numpy Array provides a sliding window view .numpy.lib.stride_tricks.sliding_window_view stay numpy Construct views on arrays , Provides sliding or moving window access to arrays . This makes running means And other algorithms can be easily implemented .

>>> x = np.arange(6)
*>>>* ** x.shape
*>>>* ** v = sliding_window_view(x, 3)
*>>>* ** v.shape
(4, 3)
*>>>* ** v
array([[0, 1, 2],
[1, 2, 3],
[2, 3, 4],
[3, 4, 5]])

(3) A user oriented (user-facing) New functions for numpy.broadcast_shapes. This function can be passed through a given number one group broadcasting Get shape , among broadcasting The function of the mechanism is to facilitate different shape Of array Do math .

*>>>* np.broadcast_shapes((1, 2), (3, 1))
(3, 2)
*>>>* np.broadcast_shapes(2, (3, 1))
(3, 2)
*>>>* np.broadcast_shapes((6, 7), (5, 6, 1), (7,), (5, 1, 7))
(5, 6, 7)

Abandoned functions

image These built-in types (builtin type) The alias for has been discarded . For a long time , yes int Another name for , But it's often a problem for beginners , This is mainly due to historical reasons .

The following table shows a complete list of discarded aliases , The third column is spare NumPy name .

Besides , take shape=None Pass to with non optional parameters shape Function of has been discarded ,mode and searchside Inexact matching of 、numpy.dual Modules are also discarded .

For more updates, please refer to :

2021 year 2 The first week of the month , The heart of machine will join hands with more than 20 people AI Online live broadcast of famous guests , Through round table discussion 、 trend Talk, Report interpretation and case sharing , To pay attention to the development trend of artificial intelligence industry AI Human interpretation of the evolution trend of Technology , To explore the context of industrial development together . Seven days in a row , It's wonderful .

This article is from WeChat official account. - Almost Human (almosthuman2014)

The source and reprint of the original text are detailed in the text , If there is any infringement , Please contact the Delete .

Original publication time : 2021-02-04

Participation of this paper Tencent cloud media sharing plan , You are welcome to join us , share .

本文为[The heart of machine]所创,转载请带上原文链接,感谢

  1. Python notes: List
  2. Translation: practical Python Programming 02_ 03_ Formatting
  3. Python中的四种队列(queue)、堆(heap)
  4. Side effects of Python mutable types as default parameters of functions
  5. This is the best Python tutorial I've ever seen: ten minutes to get to know python
  6. 使用python编写量子线路打印的简单项目,并使用Sphinx自动化生成API文档
  7. Python happy enemy: crawler and anti crawler with a solution to give you New Year
  8. 使用python编写量子线路打印的简单项目,并使用Sphinx自动化生成API文档
  9. When writing python, you will encounter the following error: modulenotfounderror: no module named ' email.mime '; 'email' is not a package
  10. Python class call and private and public property method call
  11. Proprietary methods for Python classes
  12. Foundation of Python: number string and list
  13. Foundation of Python: number string and list
  14. Foundation of Python: number string and list
  15. 华为 Python网络自动化
  16. Python Cannot open E:\Python36\Scripts\
  17. Peeping into the future is not a dream, python data analysis is easy to achieve
  18. The practical skills summed up by Alibaba and Huawei Python engineers, only you haven't seen them yet?
  19. Sour! See the Python programmers on the tiktok get the pay slip...
  20. Foundation of Python: number string and list
  21. Python installation tutorial
  22. Python installation tutorial
  23. This article will familiarize you with the transformation process of Python - > Cafe - > om model
  24. Four kinds of queues and heaps in Python
  25. Using Python to write a simple project of quantum circuit printing, and using Sphinx to automatically generate API documents
  26. Using Python to write a simple project of quantum circuit printing, and using Sphinx to automatically generate API documents
  27. Huawei Python Network Automation
  28. Python Cannot open E:\Python36\Scripts\pip-
  29. 找不到Python问题解决
  30. PHP和Python哪个更有市场前景?我学的是PHP
  31. Python problem resolution not found
  32. Which has more market prospects, PHP or Python? I studied PHP
  33. Foundation of Python: number string and list
  34. python 编码问题之终极解决
  35. The ultimate solution to the problem of Python coding
  36. 能取值亦能赋值的Python切片
  37. Python slice with value and value
  38. 能取值亦能赋值的Python切片
  39. Python slice with value and value
  40. python 异常处理
  41. Python exception handling
  42. python 异常处理
  43. Python exception handling
  44. Orca: 基于DolphinDB的分布式pandas接口
  45. Orca: distributed panda interface based on dolphin DB
  46. 5个无聊Python程序,用Python整蛊你的朋友们吧
  47. Five boring Python programs, trick your friends with Python
  48. python进阶训练营
  49. Python advanced training camp
  50. 【免费】0基础也能轻松学的Python训练营来啦,限时抢位中!
  51. [free] Python training camp, which is easy to learn, is here. It's time to grab a place!
  52. 手把手教你把Python应用到实际开发 不再空谈语法
  53. 全面系统Python3.8入门+进阶 (程序员必备第二语言)
  54. Hand in hand to teach you how to apply Python to practical development
  55. Comprehensive system introduction to Python 3.8 + Advanced
  56. Python语言的排序算法有哪些?Python学习班!
  57. Python language sorting algorithm what? Python classes!
  58. Java、JavaScript、C、C++、PHP、Python都是用来开发什么?
  59. 为什么学习Python?什么途径学习Python合适?
  60. What are Java, JavaScript, C, C + +, PHP and python used to develop?