PyPyNum 1.11.1__py3-none-any.whl → 1.12.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.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: PyPyNum
3
- Version: 1.11.1
3
+ Version: 1.12.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
  [![Downloads](https://static.pepy.tech/badge/pypynum/month)](https://pepy.tech/project/pypynum)
235
235
  [![Downloads](https://static.pepy.tech/badge/pypynum/week)](https://pepy.tech/project/pypynum)
236
236
 
237
- ## Version -> 1.11.1 | PyPI -> https://pypi.org/project/PyPyNum/ | Gitee -> https://www.gitee.com/PythonSJL/PyPyNum | GitHub -> https://github.com/PythonSJL/PyPyNum
237
+ ## Version -> 1.12.0 | PyPI -> https://pypi.org/project/PyPyNum/ | Gitee -> https://www.gitee.com/PythonSJL/PyPyNum | GitHub -> https://github.com/PythonSJL/PyPyNum
238
238
 
239
239
  ![LOGO](PyPyNum.png)
240
240
 
@@ -263,6 +263,7 @@ The logo cannot be displayed on PyPI, it can be viewed in Gitee or GitHub.
263
263
  | `pypynum.Array` | 多维数组 Multidimensional array |
264
264
  | `pypynum.chars` | 特殊数学符号 Special mathematical symbols |
265
265
  | `pypynum.cipher` | 加密解密算法 Encryption and decryption algorithm |
266
+ | `pypynum.confs` | 通用配置 Universal configuration |
266
267
  | `pypynum.constants` | 数学常数集合 Set of mathematical constants |
267
268
  | `pypynum.dists` | 概率分布 Probability distribution |
268
269
  | `pypynum.equations` | 方程求解 Solving equations |
@@ -272,11 +273,11 @@ The logo cannot be displayed on PyPI, it can be viewed in Gitee or GitHub.
272
273
  | `pypynum.Geometry` | 几何形状 Geometric shape |
273
274
  | `pypynum.Graph` | 图论算法 Graph Theory Algorithm |
274
275
  | `pypynum.Group` | 群论算法 Group Theory Algorithm |
275
- | `pypynum.highprec` | 高精度计算 high precision computation |
276
276
  | `pypynum.image` | 图像处理 Image processing |
277
277
  | `pypynum.Logic` | 逻辑电路设计 Logic circuit design |
278
278
  | `pypynum.maths` | 通用数学函数 General mathematical functions |
279
279
  | `pypynum.Matrix` | 矩阵运算 Matrix operation |
280
+ | `pypynum.multiprec` | 多精度计算 Multi precision calculation |
280
281
  | `pypynum.NeuralN` | 神经网络训练 Neural network training |
281
282
  | `pypynum.numbers` | 数字处理 Number processing |
282
283
  | `pypynum.plotting` | 数据可视化 Data visualization |
@@ -297,6 +298,7 @@ The logo cannot be displayed on PyPI, it can be viewed in Gitee or GitHub.
297
298
  | `pypynum.ufuncs` | 通用函数 Universal functions |
298
299
  | `pypynum.utils` | 实用工具 Utility |
299
300
  | `pypynum.Vector` | 向量运算 Vector operation |
301
+ | `pypynum.zh_cn` | 中文名的函数 Functions with Chinese names |
300
302
 
301
303
  ### PyPyNum的Zen(预览)
302
304
 
@@ -336,93 +338,153 @@ Python interpreter and run it!
336
338
  ```
337
339
  !=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=
338
340
 
339
- <<<新增的函数>>>
341
+ 添加了zh_cn模块,
342
+ 其中包括一些用中文名称封装的函数,
343
+ 并将继续补充未封装的函数。
340
344
 
341
- <<<New functions added>>>
345
+ Added zh_cn module,
346
+ which includes some functions encapsulated with Chinese names,
347
+ and will continue to supplement unencapsulated functions.
342
348
 
343
- ├── highprec
344
- │ └── FUNCTION
345
- │ ├── calc_e(digits: int, method: str) -> decimal.Decimal
346
- │ ├── calc_phi(digits: int, method: str) -> decimal.Decimal
347
- │ └── calc_pi(digits: int, method: str) -> decimal.Decimal
348
- ├── pprinters
349
- │ └── FUNCTION
350
- │ └── pprint_matrix(matrix: Any, style: Any, output: Any) -> Any
349
+ 以下是当前已经过中文名称封装的函数:
350
+
351
+ The following are the functions that have already been encapsulated with Chinese names:
352
+
353
+ ["Fraction转为Decimal", "RC4伪随机生成算法", "RC4初始化密钥调度算法", "RC4密码", "ROT13密码", "S型函数", "base64密码",
354
+ "x对数y乘积", "y次方根", "一维傅里叶变换", "上伽玛", "上标转整数", "下伽玛", "下标转整数", "中位数", "中国剩余定理",
355
+ "中心矩", "乘积和", "代替密码", "众数", "伽玛函数", "余切", "余割", "余弦", "偏度", "全一", "全部填充", "全零", "写入",
356
+ "几何平均数", "凯撒密码", "判定系数", "判断平方数", "加权平均", "协方差", "原根", "原点矩", "双曲余切", "双曲余割",
357
+ "双曲余弦", "双曲正切", "双曲正割", "双曲正弦", "反余切", "反余割", "反余弦", "反双曲余切", "反双曲余割", "反双曲余弦",
358
+ "反双曲正切", "反双曲正割", "反双曲正弦", "反正切", "反正割", "反正弦", "可能是平方数", "填充序列", "多次方根取整",
359
+ "多精度余弦", "多精度圆周率", "多精度对数", "多精度欧拉数", "多精度正弦", "多精度自然对数", "多精度黄金分割率",
360
+ "多项式方程", "导数", "峰度", "希尔256密码", "平均数", "平方平均数", "平方根取整", "序列滚动", "归一化",
361
+ "扩展欧几里得算法", "排列数", "数组", "整数转上标", "整数转下标", "方差", "普莱费尔密码", "最大公约数", "最小公倍数",
362
+ "极差", "标准差", "模运算阶", "欧拉函数", "正切", "正割", "正弦", "相关系数", "积分", "积累乘积", "符号函数",
363
+ "类似形状全一", "类似形状全零", "类似形状填充", "累乘积", "累加和", "线性方程组", "组合数", "维吉尼亚密码", "自然对数",
364
+ "自然指数", "莫尔斯密码", "误差函数", "读取", "调和平均数", "贝塔函数", "贝塞尔I0", "贝塞尔Iv", "负一整数次幂",
365
+ "转换为列表", "转换为数组", "连续乘积", "连续加和", "阶乘函数", "阿特巴什密码", "频率统计", "黎曼函数"]
366
+
367
+ (120 functions)
368
+
369
+ 下面是一个使用示例
370
+
371
+ Here is an example of usage
372
+
373
+ >>> from pypynum import zh_cn
374
+ >>> print(zh_cn.多精度正弦(1, 100))
375
+ 0.8414709848078965066525023216302989996225630607983710656727517099919104043912396689486397435430526959
376
+
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)
399
+
400
+ !=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=
401
+
402
+ "Polynomial"类增加了五个寻找特殊点的方法,下面是这五个方法。
403
+
404
+ The "Polynomial" class has added five methods for finding special points.
405
+ Here are these five methods.
406
+
407
+
408
+ 1. `stationaries(self, tolerance=1e-15)`:
409
+
410
+ 计算多项式的**驻点**,即一阶导数等于零的点。
411
+ 驻点可能是局部极大值、局部极小值或鞍点。
412
+
413
+ Calculate the stationary point of a polynomial,
414
+ which is the point where the first derivative equals zero.
415
+ The stationary point may be a local maximum,
416
+ local minimum,
417
+ or saddle point.
418
+
419
+
420
+ 2. `saddles(self, tolerance=1e-15)`:
421
+
422
+ 计算多项式的**鞍点**。
423
+ 鞍点是驻点,其一阶导数在该点为零,而二阶导数在该点不为零且一阶导数与二阶导数的符号相反。
351
424
 
352
- =!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=
353
-
354
- 新增的highprec模块用于高精度计算
355
-
356
- The newly added highprec module
357
- is used for high-precision
358
- calculations
359
-
360
- =!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=
361
-
362
- 函数pprint_matrix支持五种矩阵美化输出
363
- 风格:["numpy", "mpmath", "sympy",
364
- "borderless", "numbered"]
365
-
366
- The function pprint_matrix
367
- supports five types of matrix
368
- beautification output styles:
369
- ["numpy", "mpmath", "sympy",
370
- "borderless", "numbered"]
371
-
372
- [[-81 -3 83 36 19 -77 -29 14]
373
- [-73 -14 34 58 -55 6 -84 4]
374
- [ 33 80 -31 -36 49 -22 66 -1]
375
- [-78 69 91 -59 89 40 2 68]
376
- [-62 59 -54 -92 -80 -13 60 -99]
377
- [ 96 -35 -34 65 -31 -88 -1 -31]
378
- [ 13 96 -72 26 -44 -74 -48 -49]
379
- [ 96 19 96 -94 -95 75 40 -74]]
380
-
381
- [-81 -3 83 36 19 -77 -29 14]
382
- [-73 -14 34 58 -55 6 -84 4]
383
- [ 33 80 -31 -36 49 -22 66 -1]
384
- [-78 69 91 -59 89 40 2 68]
385
- [-62 59 -54 -92 -80 -13 60 -99]
386
- [ 96 -35 -34 65 -31 -88 -1 -31]
387
- [ 13 96 -72 26 -44 -74 -48 -49]
388
- [ 96 19 96 -94 -95 75 40 -74]
389
-
390
- ⎡-81 -3 83 36 19 -77 -29 14⎤
391
- ⎢ ⎥
392
- ⎢-73 -14 34 58 -55 6 -84 4⎥
393
- ⎢ ⎥
394
- 33 80 -31 -36 49 -22 66 -1⎥
395
- ⎢ ⎥
396
- ⎢-78 69 91 -59 89 40 2 68⎥
397
- ⎢ ⎥
398
- ⎢-62 59 -54 -92 -80 -13 60 -99⎥
399
- ⎢ ⎥
400
- ⎢ 96 -35 -34 65 -31 -88 -1 -31⎥
401
- ⎢ ⎥
402
- 13 96 -72 26 -44 -74 -48 -49⎥
403
- ⎢ ⎥
404
- ⎣ 96 19 96 -94 -95 75 40 -74⎦
405
-
406
- -81 -3 83 36 19 -77 -29 14
407
- -73 -14 34 58 -55 6 -84 4
408
- 33 80 -31 -36 49 -22 66 -1
409
- -78 69 91 -59 89 40 2 68
410
- -62 59 -54 -92 -80 -13 60 -99
411
- 96 -35 -34 65 -31 -88 -1 -31
412
- 13 96 -72 26 -44 -74 -48 -49
413
- 96 19 96 -94 -95 75 40 -74
414
-
415
- | 1 2 3 4 5 6 7 8
416
- -----------------------------------
417
- 1 | -81 -3 83 36 19 -77 -29 14
418
- 2 | -73 -14 34 58 -55 6 -84 4
419
- 3 | 33 80 -31 -36 49 -22 66 -1
420
- 4 | -78 69 91 -59 89 40 2 68
421
- 5 | -62 59 -54 -92 -80 -13 60 -99
422
- 6 | 96 -35 -34 65 -31 -88 -1 -31
423
- 7 | 13 96 -72 26 -44 -74 -48 -49
424
- 8 | 96 19 96 -94 -95 75 40 -74
425
- =!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=
425
+ Calculate the saddle point of a polynomial.
426
+ The saddle point is a stationary point,
427
+ where its first derivative is zero and its second derivative is non-zero,
428
+ and the signs of the first and second derivatives are opposite.
429
+
430
+
431
+ 3. `minima(self, tolerance=1e-15)`:
432
+
433
+ 计算多项式的**局部极小值点**。
434
+ 局部极小值点是驻点,其二阶导数在该点大于零。
435
+
436
+ Calculate the local minimum points of a polynomial.
437
+ The local minimum point is a stationary point,
438
+ and its second derivative is greater than zero at that point.
439
+
440
+
441
+ 4. `maxima(self, tolerance=1e-15)`:
442
+
443
+ 计算多项式的**局部极大值点**。
444
+ 局部极大值点是驻点,其二阶导数在该点小于零。
445
+
446
+ Calculate the local maximum points of a polynomial.
447
+ The local maximum point is a stationary point,
448
+ and its second derivative is less than zero at that point.
449
+
450
+
451
+ 5. `inflections(self, tolerance=1e-15)`:
452
+
453
+ 计算多项式的**拐点**。
454
+ 拐点是二阶导数等于零的点,并且三阶导数在该点不为零,表示函数在该点改变其凹凸性。
455
+
456
+ Calculate the inflection point of a polynomial.
457
+ The inflection point is the point where the second derivative equals zero,
458
+ and the third derivative is not zero at that point,
459
+ indicating that the function changes its concavity and convexity at that point.
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
486
+
487
+ !=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=
426
488
  ```
427
489
 
428
490
  ### 运行用时测试
@@ -579,6 +641,10 @@ PyPyNum
579
641
  ├── chars
580
642
  │ ├── CLASS
581
643
  │ └── FUNCTION
644
+ │ ├── int2subscript(standard_str: str) -> str
645
+ │ ├── int2superscript(standard_str: str) -> str
646
+ │ ├── subscript2int(subscript_str: str) -> str
647
+ │ └── superscript2int(superscript_str: str) -> str
582
648
  ├── cipher
583
649
  │ ├── CLASS
584
650
  │ └── FUNCTION
@@ -594,6 +660,9 @@ PyPyNum
594
660
  │ ├── rot13(text: str) -> str
595
661
  │ ├── substitution(text: str, sub_map: dict, decrypt: bool) -> str
596
662
  │ └── vigenere(text: str, key: str, decrypt: bool) -> str
663
+ ├── confs
664
+ │ ├── CLASS
665
+ │ └── FUNCTION
597
666
  ├── constants
598
667
  │ ├── CLASS
599
668
  │ └── FUNCTION
@@ -649,12 +718,6 @@ PyPyNum
649
718
  │ └── FUNCTION
650
719
  │ ├── read(file: str) -> list
651
720
  │ └── write(file: str, cls: object) -> Any
652
- ├── highprec
653
- │ ├── CLASS
654
- │ └── FUNCTION
655
- │ ├── calc_e(digits: int, method: str) -> decimal.Decimal
656
- │ ├── calc_phi(digits: int, method: str) -> decimal.Decimal
657
- │ └── calc_pi(digits: int, method: str) -> decimal.Decimal
658
721
  ├── image
659
722
  │ ├── CLASS
660
723
  │ │ └── PNG(object)/__init__(self: Any) -> None
@@ -678,9 +741,9 @@ PyPyNum
678
741
  │ ├── asinh(x: typing.Union[int, float]) -> typing.Union[int, float]
679
742
  │ ├── atan(x: typing.Union[int, float]) -> typing.Union[int, float]
680
743
  │ ├── atanh(x: typing.Union[int, float]) -> typing.Union[int, float]
681
- │ ├── average(data: Any, weights: Any, expected: Any) -> Any
682
- │ ├── bessel_i0(x: Any) -> Any
683
- │ ├── bessel_iv(v: Any, x: Any) -> Any
744
+ │ ├── average(data: typing.Union[list, tuple], weights: typing.Union[list, tuple]) -> float
745
+ │ ├── bessel_i0(x: typing.Union[int, float]) -> typing.Union[int, float]
746
+ │ ├── bessel_iv(v: typing.Union[int, float], x: typing.Union[int, float]) -> typing.Union[int, float]
684
747
  │ ├── beta(p: typing.Union[int, float], q: typing.Union[int, float]) -> typing.Union[int, float]
685
748
  │ ├── central_moment(data: typing.Union[list, tuple], order: int) -> float
686
749
  │ ├── coeff_det(x: typing.Union[list, tuple], y: typing.Union[list, tuple]) -> typing.Union[int, float, complex]
@@ -714,7 +777,7 @@ PyPyNum
714
777
  │ ├── kurt(data: typing.Union[list, tuple], fisher: bool) -> float
715
778
  │ ├── lcm(args: int) -> int
716
779
  │ ├── ln(x: typing.Union[int, float]) -> typing.Union[int, float]
717
- │ ├── lower_gamma(s: Any, x: Any) -> Any
780
+ │ ├── lower_gamma(s: typing.Union[int, float, complex], x: typing.Union[int, float, complex]) -> typing.Union[int, float, complex]
718
781
  │ ├── mean(numbers: typing.Union[list, tuple]) -> typing.Union[int, float, complex]
719
782
  │ ├── median(numbers: typing.Union[list, tuple]) -> typing.Union[int, float, complex]
720
783
  │ ├── mod_order(a: int, n: int, b: int) -> int
@@ -742,10 +805,21 @@ PyPyNum
742
805
  │ ├── tan(x: typing.Union[int, float]) -> typing.Union[int, float]
743
806
  │ ├── tanh(x: typing.Union[int, float]) -> typing.Union[int, float]
744
807
  │ ├── totient(n: int) -> int
745
- │ ├── upper_gamma(s: Any, x: Any) -> Any
808
+ │ ├── upper_gamma(s: typing.Union[int, float, complex], x: typing.Union[int, float, complex]) -> typing.Union[int, float, complex]
746
809
  │ ├── var(numbers: typing.Union[list, tuple], dof: int) -> typing.Union[int, float, complex]
747
810
  │ ├── xlogy(x: typing.Union[int, float, complex], y: typing.Union[int, float, complex]) -> typing.Union[int, float, complex]
748
811
  │ └── zeta(alpha: typing.Union[int, float, complex]) -> typing.Union[int, float, complex]
812
+ ├── multiprec
813
+ │ ├── CLASS
814
+ │ └── FUNCTION
815
+ │ ├── frac2dec(frac: fractions.Fraction, sigfigs: int) -> decimal.Decimal
816
+ │ ├── mp_cos(x: typing.Union[int, str, decimal.Decimal], sigfigs: int) -> decimal.Decimal
817
+ │ ├── mp_e(sigfigs: int, method: str) -> decimal.Decimal
818
+ │ ├── mp_ln(x: typing.Union[int, str, decimal.Decimal], sigfigs: int, builtin: bool) -> decimal.Decimal
819
+ │ ├── mp_log(x: typing.Union[int, str, decimal.Decimal], base: typing.Union[int, str, decimal.Decimal], sigfigs: int, builtin: bool) -> decimal.Decimal
820
+ │ ├── mp_phi(sigfigs: int, method: str) -> decimal.Decimal
821
+ │ ├── mp_pi(sigfigs: int, method: str) -> decimal.Decimal
822
+ │ └── mp_sin(x: typing.Union[int, str, decimal.Decimal], sigfigs: int) -> decimal.Decimal
749
823
  ├── numbers
750
824
  │ ├── CLASS
751
825
  │ └── FUNCTION
@@ -779,9 +853,10 @@ PyPyNum
779
853
  ├── random
780
854
  │ ├── CLASS
781
855
  │ └── FUNCTION
856
+ │ ├── __create_nested_list(dimensions: Any, func: Any) -> Any
857
+ │ ├── __validate_shape(shape: Any) -> Any
782
858
  │ ├── choice(seq: typing.Union[list, tuple, str], shape: typing.Union[list, tuple]) -> Any
783
859
  │ ├── gauss(mu: typing.Union[int, float], sigma: typing.Union[int, float], shape: typing.Union[list, tuple]) -> typing.Union[float, list]
784
- │ ├── gauss_error(original: typing.Union[list, tuple], mu: typing.Union[int, float], sigma: typing.Union[int, float]) -> list
785
860
  │ ├── rand(shape: typing.Union[list, tuple]) -> typing.Union[float, list]
786
861
  │ ├── randint(a: int, b: int, shape: typing.Union[list, tuple]) -> typing.Union[int, list]
787
862
  │ └── uniform(a: typing.Union[int, float], b: typing.Union[int, float], shape: typing.Union[list, tuple]) -> typing.Union[float, list]
@@ -846,13 +921,137 @@ PyPyNum
846
921
  │ ├── power(x: Any, y: Any, m: Any) -> Any
847
922
  │ ├── subtract(x: Any, y: Any) -> Any
848
923
  │ └── ufunc_helper(x: Any, y: Any, func: Any) -> Any
849
- └── utils
924
+ ├── utils
925
+ │ ├── CLASS
926
+ │ │ ├── InfIterator(object)/__init__(self: Any, start: typing.Union[int, float, complex], mode: str, common: typing.Union[int, float, complex]) -> Any
927
+ │ │ ├── IntervalSet(object)/__init__(self: Any, intervals: Any) -> Any
928
+ │ │ ├── LinkedList(object)/__init__(self: Any) -> Any
929
+ │ │ ├── LinkedListNode(object)/__init__(self: Any, value: Any, next_node: Any) -> Any
930
+ │ │ └── OrderedSet(object)/__init__(self: Any, sequence: Any) -> Any
931
+ │ └── FUNCTION
932
+ └── zh_cn
850
933
  ├── CLASS
851
- │ ├── InfIterator(object)/__init__(self: Any, start: typing.Union[int, float, complex], mode: str, common: typing.Union[int, float, complex]) -> Any
852
- │ ├── LinkedList(object)/__init__(self: Any) -> Any
853
- │ ├── LinkedListNode(object)/__init__(self: Any, value: Any, next_node: Any) -> Any
854
- │ └── OrderedSet(object)/__init__(self: Any, sequence: Any) -> Any
855
934
  └── FUNCTION
935
+ ├── Fraction转为Decimal(分数对象: fractions.Fraction, 有效位数: int) -> decimal.Decimal
936
+ ├── RC4伪随机生成算法(密钥序列: list) -> Any
937
+ ├── RC4初始化密钥调度算法(密钥: bytes) -> list
938
+ ├── RC4密码(文本: bytes, 密钥: bytes) -> bytes
939
+ ├── ROT13密码(文本: str) -> str
940
+ ├── S型函数(x: typing.Union[int, float]) -> typing.Union[int, float]
941
+ ├── base64密码(文本: str, 解密: bool) -> str
942
+ ├── x对数y乘积(x: float, y: float) -> float
943
+ ├── y次方根(被开方数: typing.Union[int, float, complex], 开方数: typing.Union[int, float, complex]) -> typing.Union[int, float, complex]
944
+ ├── 一维傅里叶变换(数据: Any) -> pypynum.FourierT.FT1D
945
+ ├── 上伽玛(s: typing.Union[int, float, complex], x: typing.Union[int, float, complex]) -> typing.Union[int, float, complex]
946
+ ├── 上标转整数(上标字符串: str) -> str
947
+ ├── 下伽玛(s: typing.Union[int, float, complex], x: typing.Union[int, float, complex]) -> typing.Union[int, float, complex]
948
+ ├── 下标转整数(下标字符串: str) -> str
949
+ ├── 中位数(数据: typing.List[float]) -> float
950
+ ├── 中国剩余定理(n: typing.List[int], a: typing.List[int]) -> int
951
+ ├── 中心矩(数据: typing.List[float], 阶数: int) -> float
952
+ ├── 乘积和(数组: typing.List[typing.Any]) -> float
953
+ ├── 代替密码(文本: str, 替换映射: dict, 解密: bool) -> str
954
+ ├── 众数(数据: typing.List[typing.Any]) -> Any
955
+ ├── 伽玛函数(alpha: float) -> float
956
+ ├── 余切(x: typing.Union[int, float]) -> typing.Union[int, float]
957
+ ├── 余割(x: typing.Union[int, float]) -> typing.Union[int, float]
958
+ ├── 余弦(x: typing.Union[int, float]) -> typing.Union[int, float]
959
+ ├── 偏度(数据: typing.List[float]) -> float
960
+ ├── 全一(形状: Any, 返回类型: Any) -> Any
961
+ ├── 全部填充(形状: Any, 填充值: Any, 返回类型: Any) -> Any
962
+ ├── 全零(形状: Any, 返回类型: Any) -> Any
963
+ ├── 写入(文件: str, 对象: object) -> Any
964
+ ├── 几何平均数(数据: typing.List[float]) -> float
965
+ ├── 凯撒密码(文本: str, 移位: int, 解密: bool) -> str
966
+ ├── 判定系数(x: typing.List[float], y: typing.List[float]) -> float
967
+ ├── 判断平方数(n: int) -> bool
968
+ ├── 加权平均(数据: typing.List[float], 权重: typing.List[float]) -> float
969
+ ├── 协方差(x: typing.List[float], y: typing.List[float], 自由度: int) -> float
970
+ ├── 原根(a: int, 单个: bool) -> typing.Union[int, typing.List[int]]
971
+ ├── 原点矩(数据: typing.List[float], 阶数: int) -> float
972
+ ├── 双曲余切(x: typing.Union[int, float]) -> typing.Union[int, float]
973
+ ├── 双曲余割(x: typing.Union[int, float]) -> typing.Union[int, float]
974
+ ├── 双曲余弦(x: typing.Union[int, float]) -> typing.Union[int, float]
975
+ ├── 双曲正切(x: typing.Union[int, float]) -> typing.Union[int, float]
976
+ ├── 双曲正割(x: typing.Union[int, float]) -> typing.Union[int, float]
977
+ ├── 双曲正弦(x: typing.Union[int, float]) -> typing.Union[int, float]
978
+ ├── 反余切(x: typing.Union[int, float]) -> typing.Union[int, float]
979
+ ├── 反余割(x: typing.Union[int, float]) -> typing.Union[int, float]
980
+ ├── 反余弦(x: typing.Union[int, float]) -> typing.Union[int, float]
981
+ ├── 反双曲余切(x: typing.Union[int, float]) -> typing.Union[int, float]
982
+ ├── 反双曲余割(x: typing.Union[int, float]) -> typing.Union[int, float]
983
+ ├── 反双曲余弦(x: typing.Union[int, float]) -> typing.Union[int, float]
984
+ ├── 反双曲正切(x: typing.Union[int, float]) -> typing.Union[int, float]
985
+ ├── 反双曲正割(x: typing.Union[int, float]) -> typing.Union[int, float]
986
+ ├── 反双曲正弦(x: typing.Union[int, float]) -> typing.Union[int, float]
987
+ ├── 反正切(x: typing.Union[int, float]) -> typing.Union[int, float]
988
+ ├── 反正割(x: typing.Union[int, float]) -> typing.Union[int, float]
989
+ ├── 反正弦(x: typing.Union[int, float]) -> typing.Union[int, float]
990
+ ├── 可能是平方数(n: int) -> bool
991
+ ├── 填充序列(形状: Any, 序列: Any, 重复: Any, 填充: Any, 返回类型: Any) -> Any
992
+ ├── 多次方根取整(被开方数: int, 开方数: int) -> int
993
+ ├── 多精度余弦(x: typing.Union[int, float], 有效位数: int) -> decimal.Decimal
994
+ ├── 多精度圆周率(有效位数: int, 方法: str) -> decimal.Decimal
995
+ ├── 多精度对数(真数: typing.Union[int, float], 底数: typing.Union[int, float], 有效位数: int, 使用内置方法: bool) -> decimal.Decimal
996
+ ├── 多精度欧拉数(有效位数: int, 方法: str) -> decimal.Decimal
997
+ ├── 多精度正弦(x: typing.Union[int, float], 有效位数: int) -> decimal.Decimal
998
+ ├── 多精度自然对数(真数: typing.Union[int, float], 有效位数: int, 使用内置方法: bool) -> decimal.Decimal
999
+ ├── 多精度黄金分割率(有效位数: int, 方法: str) -> decimal.Decimal
1000
+ ├── 多项式方程(系数: list) -> list
1001
+ ├── 导数(函数: Any, 参数: float, 步长: float, 额外参数: Any, 额外关键字参数: Any) -> float
1002
+ ├── 峰度(数据: typing.List[float], 费希尔: bool) -> float
1003
+ ├── 希尔256密码(文本: bytes, 密钥: list, 解密: bool) -> bytes
1004
+ ├── 平均数(数据: typing.List[float]) -> float
1005
+ ├── 平方平均数(数据: typing.List[float]) -> float
1006
+ ├── 平方根取整(被开方数: int) -> int
1007
+ ├── 序列滚动(序列: typing.Iterator[typing.Any], 偏移: int) -> typing.Iterator[typing.Any]
1008
+ ├── 归一化(数据: typing.List[float], 目标: float) -> typing.List[float]
1009
+ ├── 扩展欧几里得算法(a: int, b: int) -> typing.Tuple[int, int, int]
1010
+ ├── 排列数(总数: int, 选取数: int) -> int
1011
+ ├── 数组(数据: list, 检查: bool) -> pypynum.Array.Array
1012
+ ├── 整数转上标(标准字符串: str) -> str
1013
+ ├── 整数转下标(标准字符串: str) -> str
1014
+ ├── 方差(数据: typing.List[float], 自由度: int) -> float
1015
+ ├── 普莱费尔密码(文本: str, 密钥: str, 解密: bool) -> str
1016
+ ├── 最大公约数(args: int) -> int
1017
+ ├── 最小公倍数(args: int) -> int
1018
+ ├── 极差(数据: typing.List[float]) -> float
1019
+ ├── 标准差(数据: typing.List[float], 自由度: int) -> float
1020
+ ├── 模运算阶(a: int, n: int, b: int) -> int
1021
+ ├── 欧拉函数(n: int) -> int
1022
+ ├── 正切(x: typing.Union[int, float]) -> typing.Union[int, float]
1023
+ ├── 正割(x: typing.Union[int, float]) -> typing.Union[int, float]
1024
+ ├── 正弦(x: typing.Union[int, float]) -> typing.Union[int, float]
1025
+ ├── 相关系数(x: typing.List[float], y: typing.List[float]) -> float
1026
+ ├── 积分(函数: Any, 积分开始: float, 积分结束: float, 积分点数: int, 额外参数: Any, 额外关键字参数: Any) -> float
1027
+ ├── 积累乘积(数据: typing.List[float]) -> float
1028
+ ├── 符号函数(x: typing.Union[int, float, complex]) -> typing.Union[int, float, complex]
1029
+ ├── 类似形状全一(数组A: Any, 返回类型: Any) -> Any
1030
+ ├── 类似形状全零(数组A: Any, 返回类型: Any) -> Any
1031
+ ├── 类似形状填充(数组A: Any, 填充值: Any, 返回类型: Any) -> Any
1032
+ ├── 累乘积(序列: typing.List[float]) -> typing.List[float]
1033
+ ├── 累加和(序列: typing.List[float]) -> typing.List[float]
1034
+ ├── 线性方程组(左边: list, 右边: list) -> list
1035
+ ├── 组合数(总数: int, 选取数: int) -> int
1036
+ ├── 维吉尼亚密码(文本: str, 密钥: str, 解密: bool) -> str
1037
+ ├── 自然对数(真数: typing.Union[int, float]) -> typing.Union[int, float]
1038
+ ├── 自然指数(指数: typing.Union[int, float]) -> typing.Union[int, float]
1039
+ ├── 莫尔斯密码(文本: str, 解密: bool) -> str
1040
+ ├── 误差函数(x: typing.Union[int, float]) -> typing.Union[int, float]
1041
+ ├── 读取(文件: str) -> list
1042
+ ├── 调和平均数(数据: typing.List[float]) -> float
1043
+ ├── 贝塔函数(p: float, q: float) -> float
1044
+ ├── 贝塞尔I0(x: typing.Union[int, float]) -> typing.Union[int, float]
1045
+ ├── 贝塞尔Iv(v: typing.Union[int, float], x: typing.Union[int, float]) -> typing.Union[int, float]
1046
+ ├── 负一整数次幂(指数: int) -> int
1047
+ ├── 转换为列表(数据: Any) -> list
1048
+ ├── 转换为数组(数据: Any) -> pypynum.Array.Array
1049
+ ├── 连续乘积(下界: int, 上界: int, 函数: typing.Callable) -> float
1050
+ ├── 连续加和(下界: int, 上界: int, 函数: typing.Callable) -> float
1051
+ ├── 阶乘函数(n: int) -> int
1052
+ ├── 阿特巴什密码(文本: str) -> str
1053
+ ├── 频率统计(数据: typing.List[typing.Any]) -> typing.Dict[typing.Any, int]
1054
+ └── 黎曼函数(alpha: float) -> float
856
1055
  ```
857
1056
 
858
1057
  ### 代码测试
@@ -2,43 +2,45 @@ pypynum/Array.py,sha256=Rv2g0gESXRaXKYR2I20I6jzlY30ng2s2mQTQh_4ggRM,11178
2
2
  pypynum/FourierT.py,sha256=AtG0tESykzEs4gDsXhcizW7qhQnmw0gjcWcXefBqzhs,1401
3
3
  pypynum/Geometry.py,sha256=bJCuif-wHO-t7oHFEE7ntzIdQwzUEbT3mcKgmBV6Wps,13982
4
4
  pypynum/Graph.py,sha256=m9iTCNYRCZmAexDzwJ8Y6J7v1aweT-6TZkqh4fOtZDE,10131
5
- pypynum/Group.py,sha256=QZdUUxa8zD9jxn69cJsbQlWZNvnSlw-31LZsmzXUxU0,2810
5
+ pypynum/Group.py,sha256=kzUR_r10ubOB2o51rKKdQPHRsgdTGL2yoY7yseKInZc,4263
6
6
  pypynum/Logic.py,sha256=IJAv59ECHU0HmG9lYCAQ_puqeL6Zor3-IDIVH48KBWE,11000
7
- pypynum/Matrix.py,sha256=gYxSxrRlWlGdkKp6QtkwvotAKOkTUWcSprzUwD65F0s,19038
7
+ pypynum/Matrix.py,sha256=AeA8I8uQ-Q2b63qDW4aasI6h6Vt3at-CK2IQ9WXfexQ,20436
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=-Pnlf97kz1Yz1dCQ6AL3YML_XF839RJLDjKjqdZnTU8,61028
11
+ pypynum/README.md,sha256=AiWIBOXP4A4ze8B4q_MEcb053aGdhcXqalMS-ey-feo,76274
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=XqnQdXCNj3zkCMU75RDP5SyeGcdyhKcHwiRFsEI4reQ,2743
17
- pypynum/chars.py,sha256=VcK9w0i73FMCzc-9aIibjdHqyMsofJXdoBq0d8L7Vr0,1001
16
+ pypynum/__init__.py,sha256=K9xZ8D7UZyG4ziHxhvTD1czsaItgmsXQgD8GrO49oGc,2873
17
+ pypynum/chars.py,sha256=ZOXZn2VzxmpHuvZ87ojhEib3CfTNgysRsFMFITHOA2E,2179
18
18
  pypynum/cipher.py,sha256=DaitY3DCoTuzyrXtD8Ap3IYDLhlMc7-o4AJfLlicvB4,10011
19
+ pypynum/confs.py,sha256=iFz83iZ1A4BK4LTqo-ZbpAcoxhYWUxtEQKsr_-d8ryw,2869
19
20
  pypynum/constants.py,sha256=xELv4DIKEqBdwF9tUqCmTQVbgVrlrj385ht5eawvshU,1406
20
21
  pypynum/dists.py,sha256=WHDeM0oC4Do77p9TVVMu3pgWzI04gYdK_s1TNGhets0,29697
21
- pypynum/equations.py,sha256=pwbSLpmFl9eChyxkTeRrs3KC3gy19kpAcpxNvWAKQVA,749
22
+ pypynum/equations.py,sha256=k0fEEiewjp_h48Xg9AMOjdvO7fMEOA1Q28bUKoi8Y_Y,656
22
23
  pypynum/errors.py,sha256=I3nh5YD5F_sBoa7hjPJi81goRflbVAZcjtmW7O2BhJk,220
23
24
  pypynum/file.py,sha256=-sg3pndZdiyM8cS6KeIhCvB6NfAovHnLOhEf0XkjidE,3411
24
- pypynum/highprec.py,sha256=iyOnbvwMothwdSQAKDTsG-CB68VCutBcmxgyQI8gKcg,3392
25
25
  pypynum/image.py,sha256=nhTZmaBVIKhuar-CcwZWb-hRYmkj4b_g7vIlYvEJEEE,12155
26
- pypynum/maths.py,sha256=kwOUVEdaL8A0kYRnllg-7ytIYbnT4YUGcA41kokHda8,30672
26
+ pypynum/maths.py,sha256=rI16_5Mvow4aCfoG6gz6WKoraOjwUfQBKmtwjg5g88Q,30646
27
+ pypynum/multiprec.py,sha256=85AoSFWKYiAkTjFQli8wtPFyaxvXpC8XD_GOL0UNCu4,5934
27
28
  pypynum/numbers.py,sha256=PqQ07TWfcNlfjCjUg1UJda-BI1uOffmQVK1qIGbll_s,8619
28
29
  pypynum/plotting.py,sha256=mbIYK5TpY1qvuMJrqz4d8bxJEiZww3AI684vSKV-DgU,7781
29
- pypynum/polynomial.py,sha256=qRNITUY5Tcx43bccs2kx_dmvL_heLM0v-IcR-FyQBl8,9465
30
+ pypynum/polynomial.py,sha256=vETxsXsMWmCObZxkcvt9piSAZmb-Z5aaQEgkM_GOrnU,11669
30
31
  pypynum/pprinters.py,sha256=Qt9-V5SUyoOqC3lsUU5D5zSSM-MmcnFCUyUtLxhS4pE,2514
31
- pypynum/random.py,sha256=vfTtyH5yOSKJoSI_-NT_Tg8wC-ZXT0wt34f87oaSpJY,4610
32
+ pypynum/random.py,sha256=PkpZp-XRbhdsSLtTiQkK83WcOWYLbLGXROu3fsOKDcU,2272
32
33
  pypynum/regression.py,sha256=PfTM8glJSi3Jgvc_C_3hQBeVjkbrzSuDqRbEf3s403w,2040
33
34
  pypynum/sequence.py,sha256=7NSZm_p_B00KFj5XZrtSm2FXhsowxs0qg_Q_P4pAA8o,7194
34
35
  pypynum/stattest.py,sha256=W1041KeVsvdcLKFJOK4hQm_DjO5ZjUE8WEmGUe-4_Zk,5507
35
36
  pypynum/test.py,sha256=hkLxhtBl9XVjaqcbzDPEuYB92vDXfM9f7AS3tF5FSEE,9005
36
37
  pypynum/this.py,sha256=oRX1OpMa4NJmQSdEjJxfszEo5FRYlxRiF8OTDRIcdMA,2154
37
38
  pypynum/tools.py,sha256=xN2hYpEnPGmn1CsdQ60OUv5HIwJRbQAWTI8NclwwHno,12609
38
- pypynum/types.py,sha256=CVWPZo_ACr_QGH5gAOhoG3jK35peiqipu3PH8ScEYHE,181
39
+ pypynum/types.py,sha256=VrC-V9LXnHL0YmloKwM67wSGHvmvEQXEDgZgKQFnF68,239
39
40
  pypynum/ufuncs.py,sha256=g2tewdsGa4VrIq2khR-0SWJoXBitVRN87DulOnTxxDA,2572
40
- pypynum/utils.py,sha256=oeHpAMFItWXfKjb0UQITPwMVKZBd3H5JT3R-jBgn2_w,14466
41
- PyPyNum-1.11.1.dist-info/METADATA,sha256=66IUHOc7kFjd5cLLnkuQDFdwV45kHmLyXkQbtO80RQA,75407
42
- PyPyNum-1.11.1.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
43
- PyPyNum-1.11.1.dist-info/top_level.txt,sha256=4wW_Xb4bRglmiMsdPAe9f75MkXhNpuN88H17g_Cr5u8,8
44
- PyPyNum-1.11.1.dist-info/RECORD,,
41
+ pypynum/utils.py,sha256=OqUFVraYDTSubF9QhZm8WC6A0ppnkhVU0YtAeYN9EyU,21048
42
+ pypynum/zh_cn.py,sha256=CpelF_mLcQp7SrtIa2C18myBSJEUD3iO4LBOoIgNlqU,11034
43
+ PyPyNum-1.12.0.dist-info/METADATA,sha256=Via1S7mpRGA81Bwfr15vrFRgfjWUyJRA8DwldFpXYLs,90653
44
+ PyPyNum-1.12.0.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
45
+ PyPyNum-1.12.0.dist-info/top_level.txt,sha256=4wW_Xb4bRglmiMsdPAe9f75MkXhNpuN88H17g_Cr5u8,8
46
+ PyPyNum-1.12.0.dist-info/RECORD,,