PyPyNum 1.12.0__py3-none-any.whl → 1.13.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {PyPyNum-1.12.0.dist-info → PyPyNum-1.13.0.dist-info}/METADATA +137 -146
- {PyPyNum-1.12.0.dist-info → PyPyNum-1.13.0.dist-info}/RECORD +16 -15
- pypynum/Matrix.py +2 -4
- pypynum/README.md +136 -145
- pypynum/__init__.py +2 -1
- pypynum/equations.py +4 -5
- pypynum/interp.py +118 -0
- pypynum/maths.py +27 -18
- pypynum/multiprec.py +353 -29
- pypynum/polynomial.py +76 -9
- pypynum/random.py +1 -1
- pypynum/tools.py +0 -31
- pypynum/types.py +1 -1
- pypynum/zh_cn.py +66 -0
- {PyPyNum-1.12.0.dist-info → PyPyNum-1.13.0.dist-info}/WHEEL +0 -0
- {PyPyNum-1.12.0.dist-info → PyPyNum-1.13.0.dist-info}/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: PyPyNum
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.13.0
|
|
4
4
|
Summary: PyPyNum is a Python library for math & science computations, covering algebra, calculus, stats, with data structures like matrices, vectors, tensors. It offers numerical tools, programs, and supports computational ops, functions, processing, simulation, & visualization in data science & ML, crucial for research, engineering, & data processing.
|
|
5
5
|
Home-page: https://github.com/PythonSJL/PyPyNum
|
|
6
6
|
Author: Shen Jiayi
|
|
@@ -234,7 +234,7 @@ processing.</font><font color = red>[Python>=3.4]</font>
|
|
|
234
234
|
[](https://pepy.tech/project/pypynum)
|
|
235
235
|
[](https://pepy.tech/project/pypynum)
|
|
236
236
|
|
|
237
|
-
## Version -> 1.
|
|
237
|
+
## Version -> 1.13.0 | PyPI -> https://pypi.org/project/PyPyNum/ | Gitee -> https://www.gitee.com/PythonSJL/PyPyNum | GitHub -> https://github.com/PythonSJL/PyPyNum
|
|
238
238
|
|
|
239
239
|

|
|
240
240
|
|
|
@@ -251,8 +251,8 @@ The logo cannot be displayed on PyPI, it can be viewed in Gitee or GitHub.
|
|
|
251
251
|
supports other types of Python interpreters
|
|
252
252
|
+ 不定期更新版本,增加更多实用功能
|
|
253
253
|
+ Update versions periodically to add more practical features
|
|
254
|
-
+ 如需联系,请添加QQ号2261748025
|
|
255
|
-
+ If you need to contact, please add QQ number 2261748025 (Py𝙿𝚢𝚝𝚑𝚘𝚗-水晶兰)
|
|
254
|
+
+ 如需联系,请添加QQ号2261748025(Py𝙿𝚢𝚝𝚑𝚘𝚗-水晶兰),或者通过我的邮箱2261748025@qq.com
|
|
255
|
+
+ If you need to contact, please add QQ number 2261748025 (Py𝙿𝚢𝚝𝚑𝚘𝚗-水晶兰), or through my email 2261748025@qq.com
|
|
256
256
|
|
|
257
257
|
### 子模块的名称与功能简介
|
|
258
258
|
|
|
@@ -274,6 +274,7 @@ The logo cannot be displayed on PyPI, it can be viewed in Gitee or GitHub.
|
|
|
274
274
|
| `pypynum.Graph` | 图论算法 Graph Theory Algorithm |
|
|
275
275
|
| `pypynum.Group` | 群论算法 Group Theory Algorithm |
|
|
276
276
|
| `pypynum.image` | 图像处理 Image processing |
|
|
277
|
+
| `pypynum.interp` | 数据插值 Data Interpolation |
|
|
277
278
|
| `pypynum.Logic` | 逻辑电路设计 Logic circuit design |
|
|
278
279
|
| `pypynum.maths` | 通用数学函数 General mathematical functions |
|
|
279
280
|
| `pypynum.Matrix` | 矩阵运算 Matrix operation |
|
|
@@ -338,151 +339,102 @@ Python interpreter and run it!
|
|
|
338
339
|
```
|
|
339
340
|
!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=
|
|
340
341
|
|
|
341
|
-
|
|
342
|
-
其中包括一些用中文名称封装的函数,
|
|
343
|
-
并将继续补充未封装的函数。
|
|
342
|
+
multiprec模块新增了一些函数
|
|
344
343
|
|
|
345
|
-
|
|
346
|
-
which includes some functions encapsulated with Chinese names,
|
|
347
|
-
and will continue to supplement unencapsulated functions.
|
|
344
|
+
The multiprec module has added some new functions
|
|
348
345
|
|
|
349
|
-
|
|
346
|
+
asmpc(real: Union[int, float, str, decimal.Decimal, complex, pypynum.multiprec.MPComplex], imag: Union[int, float, str, decimal.Decimal] = 0, sigfigs: int = 28) -> pypynum.multiprec.MPComplex
|
|
347
|
+
mp_acos(x: Union[int, float, str, decimal.Decimal], sigfigs: int) -> decimal.Decimal
|
|
348
|
+
mp_asin(x: Union[int, float, str, decimal.Decimal], sigfigs: int) -> decimal.Decimal
|
|
349
|
+
mp_fresnel_c(x: Union[int, float, str, decimal.Decimal], sigfigs: int) -> decimal.Decimal
|
|
350
|
+
mp_fresnel_s(x: Union[int, float, str, decimal.Decimal], sigfigs: int) -> decimal.Decimal
|
|
350
351
|
|
|
351
|
-
The following are the functions that have already been encapsulated with Chinese names:
|
|
352
352
|
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
"双曲余弦", "双曲正切", "双曲正割", "双曲正弦", "反余切", "反余割", "反余弦", "反双曲余切", "反双曲余割", "反双曲余弦",
|
|
358
|
-
"反双曲正切", "反双曲正割", "反双曲正弦", "反正切", "反正割", "反正弦", "可能是平方数", "填充序列", "多次方根取整",
|
|
359
|
-
"多精度余弦", "多精度圆周率", "多精度对数", "多精度欧拉数", "多精度正弦", "多精度自然对数", "多精度黄金分割率",
|
|
360
|
-
"多项式方程", "导数", "峰度", "希尔256密码", "平均数", "平方平均数", "平方根取整", "序列滚动", "归一化",
|
|
361
|
-
"扩展欧几里得算法", "排列数", "数组", "整数转上标", "整数转下标", "方差", "普莱费尔密码", "最大公约数", "最小公倍数",
|
|
362
|
-
"极差", "标准差", "模运算阶", "欧拉函数", "正切", "正割", "正弦", "相关系数", "积分", "积累乘积", "符号函数",
|
|
363
|
-
"类似形状全一", "类似形状全零", "类似形状填充", "累乘积", "累加和", "线性方程组", "组合数", "维吉尼亚密码", "自然对数",
|
|
364
|
-
"自然指数", "莫尔斯密码", "误差函数", "读取", "调和平均数", "贝塔函数", "贝塞尔I0", "贝塞尔Iv", "负一整数次幂",
|
|
365
|
-
"转换为列表", "转换为数组", "连续乘积", "连续加和", "阶乘函数", "阿特巴什密码", "频率统计", "黎曼函数"]
|
|
353
|
+
新增了MPComplex类,
|
|
354
|
+
其实现了多精度复数计算,
|
|
355
|
+
目前支持加、减、乘、除、指数、对数等运算,
|
|
356
|
+
并且将在后面的版本增加各种三角函数。
|
|
366
357
|
|
|
367
|
-
|
|
358
|
+
The MPComplex class has been added,
|
|
359
|
+
which implements multi precision complex calculations.
|
|
360
|
+
Currently,
|
|
361
|
+
it supports operations such as addition,
|
|
362
|
+
subtraction,
|
|
363
|
+
multiplication,
|
|
364
|
+
division,
|
|
365
|
+
exponentiation,
|
|
366
|
+
and logarithm,
|
|
367
|
+
and various trigonometric functions will be added in later versions.
|
|
368
368
|
|
|
369
|
-
|
|
369
|
+
MPComplex(real, imag, sigfigs=28)
|
|
370
370
|
|
|
371
|
-
Here is an example of usage
|
|
372
371
|
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
0.8414709848078965066525023216302989996225630607983710656727517099919104043912396689486397435430526959
|
|
372
|
+
创建多精度复数时建议使用asmpc函数,
|
|
373
|
+
因为它可以更方便地把其他数值类型转换为MPComplex对象。
|
|
376
374
|
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
Group类修复了原有方法的问题并且新增了
|
|
380
|
-
一些方法。
|
|
381
|
-
|
|
382
|
-
The Group class has fixed the
|
|
383
|
-
issues with the original methods
|
|
384
|
-
and added some new methods.
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
下面是新增的方法(Monoid是幺半群):
|
|
388
|
-
|
|
389
|
-
Here are the newly added methods:
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
elements(self)
|
|
393
|
-
getop(self)
|
|
394
|
-
identity(self)
|
|
395
|
-
is_monoid(self, modulus=None)
|
|
396
|
-
is_subgroup(self, other, modulus=None)
|
|
397
|
-
is_supergroup(self, other, modulus=None)
|
|
398
|
-
setop(self, operation)
|
|
375
|
+
It is recommended to use the asmpc function when creating multi precision complex numbers,
|
|
376
|
+
as it can more easily convert other numerical types to MPComplex objects.
|
|
399
377
|
|
|
400
378
|
!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=
|
|
401
379
|
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
The
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
每个方法都使用了`tolerance`参数来确定计算过程中可接受的误差范围。
|
|
463
|
-
例如,在判断导数是否为零或者是否大于/小于零时,都会考虑到这个容差值。
|
|
464
|
-
|
|
465
|
-
Each method uses the 'tolerance' parameter to determine the acceptable range of error during the calculation process.
|
|
466
|
-
For example,
|
|
467
|
-
when determining whether the derivative is zero or greater/less than zero,
|
|
468
|
-
this tolerance value will be taken into account.
|
|
469
|
-
|
|
470
|
-
!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=
|
|
471
|
-
|
|
472
|
-
highprec模块改名为multiprec,
|
|
473
|
-
然后重命名和新增了几个函数。
|
|
474
|
-
|
|
475
|
-
The highprec module was renamed as multiparec,
|
|
476
|
-
and several functions were renamed and added.
|
|
477
|
-
|
|
478
|
-
frac2dec(frac: fractions.Fraction, sigfigs: int) -> decimal.Decimal
|
|
479
|
-
mp_cos(x: Union[int, str, decimal.Decimal], sigfigs: int) -> decimal.Decimal
|
|
480
|
-
mp_e(sigfigs: int, method: str = 'series') -> decimal.Decimal
|
|
481
|
-
mp_ln(x: Union[int, str, decimal.Decimal], sigfigs: int, builtin: bool = True) -> decimal.Decimal
|
|
482
|
-
mp_log(x: Union[int, str, decimal.Decimal], base: Union[int, str, decimal.Decimal], sigfigs: int, builtin: bool = True) -> decimal.Decimal
|
|
483
|
-
mp_phi(sigfigs: int, method: str = 'algebraic') -> decimal.Decimal
|
|
484
|
-
mp_pi(sigfigs: int, method: str = 'chudnovsky') -> decimal.Decimal
|
|
485
|
-
mp_sin(x: Union[int, str, decimal.Decimal], sigfigs: int) -> decimal.Decimal
|
|
380
|
+
移除了pypynum.tools.interp函数,改名为interp1d,
|
|
381
|
+
与新增的interp2d函数置于新的子模块——pypynum.interp。
|
|
382
|
+
|
|
383
|
+
Removed the pypynum.tools.interp function and renamed it interp1d,
|
|
384
|
+
placing it in a new submodule - pypynum.interp - along with the newly added interp2d function.
|
|
385
|
+
|
|
386
|
+
|
|
387
|
+
Help on module pypynum.interp in pypynum:
|
|
388
|
+
|
|
389
|
+
NAME
|
|
390
|
+
pypynum.interp
|
|
391
|
+
|
|
392
|
+
FUNCTIONS
|
|
393
|
+
bicubic(x)
|
|
394
|
+
Calculate the cubic B-spline interpolation function value.
|
|
395
|
+
:param x: The x value for which the B-spline function is evaluated.
|
|
396
|
+
:return: The value of the cubic B-spline function at x.
|
|
397
|
+
|
|
398
|
+
contribute(src, x, y, channels=None)
|
|
399
|
+
Calculate the contribution of the source array at a specific point after bicubic interpolation.
|
|
400
|
+
:param src: The source 2D array from which to interpolate.
|
|
401
|
+
:param x: The x-coordinate of the point to interpolate.
|
|
402
|
+
:param y: The y-coordinate of the point to interpolate.
|
|
403
|
+
:param channels: The number of channels if src is a multichannel array.
|
|
404
|
+
:return: The interpolated value at the point (x, y).
|
|
405
|
+
|
|
406
|
+
interp1d(data: Union[list, tuple], length: int) -> list
|
|
407
|
+
Introduction
|
|
408
|
+
==========
|
|
409
|
+
One-dimensional data interpolation
|
|
410
|
+
|
|
411
|
+
Example
|
|
412
|
+
==========
|
|
413
|
+
>>> interp1d((2, 4, 4, 2), 6)
|
|
414
|
+
[2, 3.320000000000001, 4.160000000000005, 4.160000000000012, 3.3200000000000074, 2]
|
|
415
|
+
>>>
|
|
416
|
+
:param data: List of data points to be interpolated. Must be at least two points.
|
|
417
|
+
:param length: The number of points in the resampled data set.
|
|
418
|
+
:return: A list of interpolated values at the new points.
|
|
419
|
+
|
|
420
|
+
interp2d(src, new_height, new_width, channels=None, round_res=False, min_val=None, max_val=None)
|
|
421
|
+
Introduction
|
|
422
|
+
==========
|
|
423
|
+
Two-dimensional data interpolation using bicubic spline interpolation.
|
|
424
|
+
|
|
425
|
+
Example
|
|
426
|
+
==========
|
|
427
|
+
>>> interp2d([[1, 2], [3, 4]], 3, 3)
|
|
428
|
+
[[1.0, 1.6875, 2.0], [2.25, 3.1640625, 3.375], [3.0, 3.9375, 4.0]]
|
|
429
|
+
>>>
|
|
430
|
+
:param src: The source 2D array to be interpolated.
|
|
431
|
+
:param new_height: The desired height of the interpolated array.
|
|
432
|
+
:param new_width: The desired width of the interpolated array.
|
|
433
|
+
:param channels: The number of channels if src is a multichannel array.
|
|
434
|
+
:param round_res: Whether to round the result to the nearest integer.
|
|
435
|
+
:param min_val: The minimum value to clip the interpolated results.
|
|
436
|
+
:param max_val: The maximum value to clip the interpolated results.
|
|
437
|
+
:return: A 2D array of the interpolated values with the new dimensions.
|
|
486
438
|
|
|
487
439
|
!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=
|
|
488
440
|
```
|
|
@@ -558,7 +510,7 @@ PyPyNum
|
|
|
558
510
|
│ └── FUNCTION
|
|
559
511
|
├── Group
|
|
560
512
|
│ ├── CLASS
|
|
561
|
-
│ │ └── Group(object)/__init__(self: Any, data: Any) -> Any
|
|
513
|
+
│ │ └── Group(object)/__init__(self: Any, data: Any, operation: Any) -> Any
|
|
562
514
|
│ └── FUNCTION
|
|
563
515
|
│ └── group(data: Any) -> Any
|
|
564
516
|
├── Logic
|
|
@@ -723,6 +675,13 @@ PyPyNum
|
|
|
723
675
|
│ │ └── PNG(object)/__init__(self: Any) -> None
|
|
724
676
|
│ └── FUNCTION
|
|
725
677
|
│ └── crc(data: Any, length: Any, init: Any, xor: Any) -> Any
|
|
678
|
+
├── interp
|
|
679
|
+
│ ├── CLASS
|
|
680
|
+
│ └── FUNCTION
|
|
681
|
+
│ ├── bicubic(x: Any) -> Any
|
|
682
|
+
│ ├── contribute(src: Any, x: Any, y: Any, channels: Any) -> Any
|
|
683
|
+
│ ├── interp1d(data: typing.Union[list, tuple], length: int) -> list
|
|
684
|
+
│ └── interp2d(src: Any, new_height: Any, new_width: Any, channels: Any, round_res: Any, min_val: Any, max_val: Any) -> Any
|
|
726
685
|
├── maths
|
|
727
686
|
│ ├── CLASS
|
|
728
687
|
│ └── FUNCTION
|
|
@@ -759,7 +718,7 @@ PyPyNum
|
|
|
759
718
|
│ ├── csch(x: typing.Union[int, float]) -> typing.Union[int, float]
|
|
760
719
|
│ ├── cumprod(lst: typing.Union[list, tuple]) -> list
|
|
761
720
|
│ ├── cumsum(lst: typing.Union[list, tuple]) -> list
|
|
762
|
-
│ ├── deriv(f: Any, x:
|
|
721
|
+
│ ├── deriv(f: Any, x: float, h: float, method: str, args: Any, kwargs: Any) -> Any
|
|
763
722
|
│ ├── erf(x: typing.Union[int, float]) -> float
|
|
764
723
|
│ ├── exgcd(a: int, b: int) -> tuple
|
|
765
724
|
│ ├── exp(x: typing.Union[int, float]) -> typing.Union[int, float]
|
|
@@ -811,15 +770,28 @@ PyPyNum
|
|
|
811
770
|
│ └── zeta(alpha: typing.Union[int, float, complex]) -> typing.Union[int, float, complex]
|
|
812
771
|
├── multiprec
|
|
813
772
|
│ ├── CLASS
|
|
773
|
+
│ │ └── MPComplex(object)/__init__(self: Any, real: Any, imag: Any, sigfigs: Any) -> Any
|
|
814
774
|
│ └── FUNCTION
|
|
775
|
+
│ ├── _remove_trailing_zeros(value: typing.Any) -> str
|
|
776
|
+
│ ├── _setprec(sigfigs: int) -> Any
|
|
777
|
+
│ ├── asmpc(real: typing.Union[int, float, str, decimal.Decimal, complex, pypynum.multiprec.MPComplex], imag: typing.Union[int, float, str, decimal.Decimal], sigfigs: int) -> pypynum.multiprec.MPComplex
|
|
815
778
|
│ ├── frac2dec(frac: fractions.Fraction, sigfigs: int) -> decimal.Decimal
|
|
816
|
-
│ ├──
|
|
779
|
+
│ ├── mp_acos(x: typing.Union[int, float, str, decimal.Decimal], sigfigs: int) -> decimal.Decimal
|
|
780
|
+
│ ├── mp_asin(x: typing.Union[int, float, str, decimal.Decimal], sigfigs: int) -> decimal.Decimal
|
|
781
|
+
│ ├── mp_atan(x: typing.Union[int, float, str, decimal.Decimal], sigfigs: int) -> decimal.Decimal
|
|
782
|
+
│ ├── mp_atan2(y: typing.Union[int, float, str, decimal.Decimal], x: typing.Union[int, float, str, decimal.Decimal], sigfigs: int) -> decimal.Decimal
|
|
783
|
+
│ ├── mp_cos(x: typing.Union[int, float, str, decimal.Decimal], sigfigs: int) -> decimal.Decimal
|
|
784
|
+
│ ├── mp_cosh(x: typing.Union[int, float, str, decimal.Decimal], sigfigs: int) -> decimal.Decimal
|
|
817
785
|
│ ├── mp_e(sigfigs: int, method: str) -> decimal.Decimal
|
|
818
|
-
│ ├──
|
|
819
|
-
│ ├──
|
|
786
|
+
│ ├── mp_exp(x: typing.Union[int, float, str, decimal.Decimal], sigfigs: int, builtin: bool) -> decimal.Decimal
|
|
787
|
+
│ ├── mp_fresnel_c(x: typing.Union[int, float, str, decimal.Decimal], sigfigs: int) -> decimal.Decimal
|
|
788
|
+
│ ├── mp_fresnel_s(x: typing.Union[int, float, str, decimal.Decimal], sigfigs: int) -> decimal.Decimal
|
|
789
|
+
│ ├── mp_ln(x: typing.Union[int, float, str, decimal.Decimal], sigfigs: int, builtin: bool) -> decimal.Decimal
|
|
790
|
+
│ ├── mp_log(x: typing.Union[int, float, str, decimal.Decimal], base: typing.Union[int, float, str, decimal.Decimal], sigfigs: int, builtin: bool) -> decimal.Decimal
|
|
820
791
|
│ ├── mp_phi(sigfigs: int, method: str) -> decimal.Decimal
|
|
821
792
|
│ ├── mp_pi(sigfigs: int, method: str) -> decimal.Decimal
|
|
822
|
-
│
|
|
793
|
+
│ ├── mp_sin(x: typing.Union[int, float, str, decimal.Decimal], sigfigs: int) -> decimal.Decimal
|
|
794
|
+
│ └── mp_sinh(x: typing.Union[int, float, str, decimal.Decimal], sigfigs: int) -> decimal.Decimal
|
|
823
795
|
├── numbers
|
|
824
796
|
│ ├── CLASS
|
|
825
797
|
│ └── FUNCTION
|
|
@@ -841,10 +813,14 @@ PyPyNum
|
|
|
841
813
|
│ ├── CLASS
|
|
842
814
|
│ │ └── Polynomial(object)/__init__(self: Any, terms: Any) -> Any
|
|
843
815
|
│ └── FUNCTION
|
|
816
|
+
│ ├── chebgauss(n: Any) -> Any
|
|
817
|
+
│ ├── chebpoly(n: Any, single: Any) -> Any
|
|
844
818
|
│ ├── from_coeffs(coeffs: Any) -> Any
|
|
845
819
|
│ ├── from_coords(coords: Any) -> Any
|
|
846
|
-
│ ├──
|
|
847
|
-
│ ├──
|
|
820
|
+
│ ├── laggauss(n: Any) -> Any
|
|
821
|
+
│ ├── lagpoly(n: Any, single: Any) -> Any
|
|
822
|
+
│ ├── leggauss(n: Any) -> Any
|
|
823
|
+
│ ├── legpoly(n: Any, single: Any) -> Any
|
|
848
824
|
│ └── poly(terms: Any) -> Any
|
|
849
825
|
├── pprinters
|
|
850
826
|
│ ├── CLASS
|
|
@@ -900,7 +876,6 @@ PyPyNum
|
|
|
900
876
|
│ ├── generate_primes(limit: int) -> list
|
|
901
877
|
│ ├── generate_semiprimes(limit: int) -> list
|
|
902
878
|
│ ├── geomspace(start: typing.Union[int, float], stop: typing.Union[int, float], number: int) -> list
|
|
903
|
-
│ ├── interp(data: typing.Union[list, tuple], length: int) -> list
|
|
904
879
|
│ ├── linspace(start: typing.Union[int, float], stop: typing.Union[int, float], number: int) -> list
|
|
905
880
|
│ ├── magic_square(n: Any) -> Any
|
|
906
881
|
│ ├── primality(n: int, iter_num: int) -> bool
|
|
@@ -991,13 +966,24 @@ PyPyNum
|
|
|
991
966
|
├── 填充序列(形状: Any, 序列: Any, 重复: Any, 填充: Any, 返回类型: Any) -> Any
|
|
992
967
|
├── 多次方根取整(被开方数: int, 开方数: int) -> int
|
|
993
968
|
├── 多精度余弦(x: typing.Union[int, float], 有效位数: int) -> decimal.Decimal
|
|
969
|
+
├── 多精度双曲余弦(x: typing.Union[int, float], 有效位数: int) -> decimal.Decimal
|
|
970
|
+
├── 多精度双曲正弦(x: typing.Union[int, float], 有效位数: int) -> decimal.Decimal
|
|
971
|
+
├── 多精度反余弦(x: typing.Union[int, float], 有效位数: int) -> decimal.Decimal
|
|
972
|
+
├── 多精度反正切(x: typing.Union[int, float], 有效位数: int) -> decimal.Decimal
|
|
973
|
+
├── 多精度反正弦(x: typing.Union[int, float], 有效位数: int) -> decimal.Decimal
|
|
994
974
|
├── 多精度圆周率(有效位数: int, 方法: str) -> decimal.Decimal
|
|
975
|
+
├── 多精度复数(实部: typing.Union[int, float, str, decimal.Decimal], 虚部: typing.Union[int, float, str, decimal.Decimal], 有效位数: int) -> pypynum.multiprec.MPComplex
|
|
995
976
|
├── 多精度对数(真数: typing.Union[int, float], 底数: typing.Union[int, float], 有效位数: int, 使用内置方法: bool) -> decimal.Decimal
|
|
977
|
+
├── 多精度方位角(y: typing.Union[int, float], x: typing.Union[int, float], 有效位数: int) -> decimal.Decimal
|
|
996
978
|
├── 多精度欧拉数(有效位数: int, 方法: str) -> decimal.Decimal
|
|
997
979
|
├── 多精度正弦(x: typing.Union[int, float], 有效位数: int) -> decimal.Decimal
|
|
998
980
|
├── 多精度自然对数(真数: typing.Union[int, float], 有效位数: int, 使用内置方法: bool) -> decimal.Decimal
|
|
981
|
+
├── 多精度自然指数(指数: typing.Union[int, float], 有效位数: int, 使用内置方法: bool) -> decimal.Decimal
|
|
982
|
+
├── 多精度菲涅耳余弦积分(x: typing.Union[int, float], 有效位数: int) -> decimal.Decimal
|
|
983
|
+
├── 多精度菲涅耳正弦积分(x: typing.Union[int, float], 有效位数: int) -> decimal.Decimal
|
|
999
984
|
├── 多精度黄金分割率(有效位数: int, 方法: str) -> decimal.Decimal
|
|
1000
985
|
├── 多项式方程(系数: list) -> list
|
|
986
|
+
├── 字符串转整数(字符串: str) -> int
|
|
1001
987
|
├── 导数(函数: Any, 参数: float, 步长: float, 额外参数: Any, 额外关键字参数: Any) -> float
|
|
1002
988
|
├── 峰度(数据: typing.List[float], 费希尔: bool) -> float
|
|
1003
989
|
├── 希尔256密码(文本: bytes, 密钥: list, 解密: bool) -> bytes
|
|
@@ -1011,6 +997,8 @@ PyPyNum
|
|
|
1011
997
|
├── 数组(数据: list, 检查: bool) -> pypynum.Array.Array
|
|
1012
998
|
├── 整数转上标(标准字符串: str) -> str
|
|
1013
999
|
├── 整数转下标(标准字符串: str) -> str
|
|
1000
|
+
├── 整数转单词(整数: int) -> str
|
|
1001
|
+
├── 整数转罗马数(整数: int, 上划线: bool) -> str
|
|
1014
1002
|
├── 方差(数据: typing.List[float], 自由度: int) -> float
|
|
1015
1003
|
├── 普莱费尔密码(文本: str, 密钥: str, 解密: bool) -> str
|
|
1016
1004
|
├── 最大公约数(args: int) -> int
|
|
@@ -1022,6 +1010,7 @@ PyPyNum
|
|
|
1022
1010
|
├── 正切(x: typing.Union[int, float]) -> typing.Union[int, float]
|
|
1023
1011
|
├── 正割(x: typing.Union[int, float]) -> typing.Union[int, float]
|
|
1024
1012
|
├── 正弦(x: typing.Union[int, float]) -> typing.Union[int, float]
|
|
1013
|
+
├── 浮点数转分数(数值: float, 是否带分数: bool, 误差: float) -> tuple
|
|
1025
1014
|
├── 相关系数(x: typing.List[float], y: typing.List[float]) -> float
|
|
1026
1015
|
├── 积分(函数: Any, 积分开始: float, 积分结束: float, 积分点数: int, 额外参数: Any, 额外关键字参数: Any) -> float
|
|
1027
1016
|
├── 积累乘积(数据: typing.List[float]) -> float
|
|
@@ -1034,6 +1023,7 @@ PyPyNum
|
|
|
1034
1023
|
├── 线性方程组(左边: list, 右边: list) -> list
|
|
1035
1024
|
├── 组合数(总数: int, 选取数: int) -> int
|
|
1036
1025
|
├── 维吉尼亚密码(文本: str, 密钥: str, 解密: bool) -> str
|
|
1026
|
+
├── 罗马数转整数(罗马数: str) -> int
|
|
1037
1027
|
├── 自然对数(真数: typing.Union[int, float]) -> typing.Union[int, float]
|
|
1038
1028
|
├── 自然指数(指数: typing.Union[int, float]) -> typing.Union[int, float]
|
|
1039
1029
|
├── 莫尔斯密码(文本: str, 解密: bool) -> str
|
|
@@ -1044,6 +1034,7 @@ PyPyNum
|
|
|
1044
1034
|
├── 贝塞尔I0(x: typing.Union[int, float]) -> typing.Union[int, float]
|
|
1045
1035
|
├── 贝塞尔Iv(v: typing.Union[int, float], x: typing.Union[int, float]) -> typing.Union[int, float]
|
|
1046
1036
|
├── 负一整数次幂(指数: int) -> int
|
|
1037
|
+
├── 转为多精度复数(实部: typing.Union[int, float, str, decimal.Decimal, complex, pypynum.multiprec.MPComplex], 虚部: typing.Union[int, float, str, decimal.Decimal], 有效位数: int) -> pypynum.multiprec.MPComplex
|
|
1047
1038
|
├── 转换为列表(数据: Any) -> list
|
|
1048
1039
|
├── 转换为数组(数据: Any) -> pypynum.Array.Array
|
|
1049
1040
|
├── 连续乘积(下界: int, 上界: int, 函数: typing.Callable) -> float
|
|
@@ -4,43 +4,44 @@ pypynum/Geometry.py,sha256=bJCuif-wHO-t7oHFEE7ntzIdQwzUEbT3mcKgmBV6Wps,13982
|
|
|
4
4
|
pypynum/Graph.py,sha256=m9iTCNYRCZmAexDzwJ8Y6J7v1aweT-6TZkqh4fOtZDE,10131
|
|
5
5
|
pypynum/Group.py,sha256=kzUR_r10ubOB2o51rKKdQPHRsgdTGL2yoY7yseKInZc,4263
|
|
6
6
|
pypynum/Logic.py,sha256=IJAv59ECHU0HmG9lYCAQ_puqeL6Zor3-IDIVH48KBWE,11000
|
|
7
|
-
pypynum/Matrix.py,sha256=
|
|
7
|
+
pypynum/Matrix.py,sha256=TCq8Tjz5OjhbMkkEbGFgTgnT_UyQxDHbMj8OEFeJm9M,20408
|
|
8
8
|
pypynum/NeuralN.py,sha256=iSOvC9JW1h4AFGokGGOTkKie5hAYN_YT9H4f3apI9b8,3275
|
|
9
9
|
pypynum/PyPyNum.png,sha256=t96tJPWfHxT8kcXm_qZI2z5W36TgOqjCU9qdgbmlFws,11623
|
|
10
10
|
pypynum/Quaternion.py,sha256=-BW_crP_i-veHN0_pD3Z1dipFNUX198oZDrUYTsoZw0,8017
|
|
11
|
-
pypynum/README.md,sha256=
|
|
11
|
+
pypynum/README.md,sha256=uJCs7gfD9uWGtTux3ux69PLf_0d1sF_phuoZvupwb8k,77877
|
|
12
12
|
pypynum/Symbolics.py,sha256=u-Dig3OLs6qoLzxMpTAYJGq5uSWDMvgU13TAHKLyjMY,2768
|
|
13
13
|
pypynum/Tensor.py,sha256=gi7OjrGgP5BSJS9Oma1B2EdX9qSpMNIP2BnKLojdT78,3930
|
|
14
14
|
pypynum/Tree.py,sha256=BYnlb2kKNJ8kkuq8BAHIcLvPZw5KHxbvM7YuVGhQVMk,4330
|
|
15
15
|
pypynum/Vector.py,sha256=ee-gkBtyG0l5dLFwAKRTTlnDG05pWpM19RGN7VoPvqE,3212
|
|
16
|
-
pypynum/__init__.py,sha256=
|
|
16
|
+
pypynum/__init__.py,sha256=z13AowFFRvmI0WjXZ-6hOFlJSxJZRGUapW2B0EBpFXM,2896
|
|
17
17
|
pypynum/chars.py,sha256=ZOXZn2VzxmpHuvZ87ojhEib3CfTNgysRsFMFITHOA2E,2179
|
|
18
18
|
pypynum/cipher.py,sha256=DaitY3DCoTuzyrXtD8Ap3IYDLhlMc7-o4AJfLlicvB4,10011
|
|
19
19
|
pypynum/confs.py,sha256=iFz83iZ1A4BK4LTqo-ZbpAcoxhYWUxtEQKsr_-d8ryw,2869
|
|
20
20
|
pypynum/constants.py,sha256=xELv4DIKEqBdwF9tUqCmTQVbgVrlrj385ht5eawvshU,1406
|
|
21
21
|
pypynum/dists.py,sha256=WHDeM0oC4Do77p9TVVMu3pgWzI04gYdK_s1TNGhets0,29697
|
|
22
|
-
pypynum/equations.py,sha256=
|
|
22
|
+
pypynum/equations.py,sha256=26XEQBIcL3cyPLO6YFvBK1dlFHw-du3nQG4-cXAFYe0,557
|
|
23
23
|
pypynum/errors.py,sha256=I3nh5YD5F_sBoa7hjPJi81goRflbVAZcjtmW7O2BhJk,220
|
|
24
24
|
pypynum/file.py,sha256=-sg3pndZdiyM8cS6KeIhCvB6NfAovHnLOhEf0XkjidE,3411
|
|
25
25
|
pypynum/image.py,sha256=nhTZmaBVIKhuar-CcwZWb-hRYmkj4b_g7vIlYvEJEEE,12155
|
|
26
|
-
pypynum/
|
|
27
|
-
pypynum/
|
|
26
|
+
pypynum/interp.py,sha256=PweAmBFCDpHtpo8GJxUdmpZ2DQY9C5HmmQ9zMWKQPV4,4896
|
|
27
|
+
pypynum/maths.py,sha256=cERFo7YK191xZ3JnshzXk4am9maTJUIeIEf1zIQitIM,31764
|
|
28
|
+
pypynum/multiprec.py,sha256=OVlfOfFx00OzgWVy0m3ZCtKvlR7g_1-bola6gyQwEl0,16844
|
|
28
29
|
pypynum/numbers.py,sha256=PqQ07TWfcNlfjCjUg1UJda-BI1uOffmQVK1qIGbll_s,8619
|
|
29
30
|
pypynum/plotting.py,sha256=mbIYK5TpY1qvuMJrqz4d8bxJEiZww3AI684vSKV-DgU,7781
|
|
30
|
-
pypynum/polynomial.py,sha256=
|
|
31
|
+
pypynum/polynomial.py,sha256=60hDQG_iRwduFFqawSTzAG6F3eHqfgrSnSGDwBLQB-s,14587
|
|
31
32
|
pypynum/pprinters.py,sha256=Qt9-V5SUyoOqC3lsUU5D5zSSM-MmcnFCUyUtLxhS4pE,2514
|
|
32
|
-
pypynum/random.py,sha256=
|
|
33
|
+
pypynum/random.py,sha256=qy2ISoHQVJ-zOVITplmCGvWEw-EZc18r-hZl8dvDimE,2274
|
|
33
34
|
pypynum/regression.py,sha256=PfTM8glJSi3Jgvc_C_3hQBeVjkbrzSuDqRbEf3s403w,2040
|
|
34
35
|
pypynum/sequence.py,sha256=7NSZm_p_B00KFj5XZrtSm2FXhsowxs0qg_Q_P4pAA8o,7194
|
|
35
36
|
pypynum/stattest.py,sha256=W1041KeVsvdcLKFJOK4hQm_DjO5ZjUE8WEmGUe-4_Zk,5507
|
|
36
37
|
pypynum/test.py,sha256=hkLxhtBl9XVjaqcbzDPEuYB92vDXfM9f7AS3tF5FSEE,9005
|
|
37
38
|
pypynum/this.py,sha256=oRX1OpMa4NJmQSdEjJxfszEo5FRYlxRiF8OTDRIcdMA,2154
|
|
38
|
-
pypynum/tools.py,sha256=
|
|
39
|
-
pypynum/types.py,sha256=
|
|
39
|
+
pypynum/tools.py,sha256=dEUgRxCahVm-fk8fRxrLqylLAHZygjWbmKmB9Nw_RZk,11395
|
|
40
|
+
pypynum/types.py,sha256=ek9tydfCspsjcvxVFv_rJegnTHl6PHwKPdqjvHfkvDg,246
|
|
40
41
|
pypynum/ufuncs.py,sha256=g2tewdsGa4VrIq2khR-0SWJoXBitVRN87DulOnTxxDA,2572
|
|
41
42
|
pypynum/utils.py,sha256=OqUFVraYDTSubF9QhZm8WC6A0ppnkhVU0YtAeYN9EyU,21048
|
|
42
|
-
pypynum/zh_cn.py,sha256=
|
|
43
|
-
PyPyNum-1.
|
|
44
|
-
PyPyNum-1.
|
|
45
|
-
PyPyNum-1.
|
|
46
|
-
PyPyNum-1.
|
|
43
|
+
pypynum/zh_cn.py,sha256=Ky9AWuW64Vbhg_Pdn0Yksls7IEM_zk7uz1bb4iKmGNc,13008
|
|
44
|
+
PyPyNum-1.13.0.dist-info/METADATA,sha256=P9M8A3kV5TxksHjXsOO3yuxd1lQIA1UwKNGq6ZWIml8,92256
|
|
45
|
+
PyPyNum-1.13.0.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
|
|
46
|
+
PyPyNum-1.13.0.dist-info/top_level.txt,sha256=4wW_Xb4bRglmiMsdPAe9f75MkXhNpuN88H17g_Cr5u8,8
|
|
47
|
+
PyPyNum-1.13.0.dist-info/RECORD,,
|
pypynum/Matrix.py
CHANGED
|
@@ -211,11 +211,9 @@ class Matrix(Array):
|
|
|
211
211
|
"\\end{{{}}}".format(matrix_type)]
|
|
212
212
|
return "".join(latex_str)
|
|
213
213
|
|
|
214
|
-
def
|
|
214
|
+
def __str__(self, use_latex=False):
|
|
215
215
|
use_latex = config.use_latex or use_latex
|
|
216
|
-
return self.latex() if use_latex else super().
|
|
217
|
-
|
|
218
|
-
__str__ = __repr__
|
|
216
|
+
return self.latex() if use_latex else super().__str__()
|
|
219
217
|
|
|
220
218
|
def __setitem__(self, key, value):
|
|
221
219
|
if isinstance(key, (int, slice)):
|