python中的模块化算法

mod的Python项目详细描述


Build StatusDocumentation Status

说明

Modular arithmetic 是整数的算术,其中数字环绕 当达到名为modulus的给定值时。 例如6 ≡ 1 (mod 5)。 模块化算法有几个实际应用,包括: musicbankingbook publishingcryptography… 当然还有数学。

这个包的目的是简化 模运算在Python3中的使用

用法

此包提供Mod整数 用模来计算诸如+ - * // **之类的算术运算

frommodimportMod# Funny math herex=Mod(5,7)# x ≡ 5 (mod 7)(x+2)==0# True: 5 + 2 ≡ 7 ≡ 0 (mod 7)(x+7)==x# True: 5 + 7 ≡ 12 ≡ 5 (mod 7)(x**3)==(x+1)# True: 5³ ≡ 125 ≡ 6 (mod 7)(1//x)==3# True: 5 × 3 ≡ 15 ≡ 1 (mod 7) ⇒ 5⁻¹ ≡ 3 (mod 7)

天真的实现 RSA encryption algorithm 使用mod包:

frommodimportMod# My RSA keyspublic_key=Mod(3,61423)private_key=Mod(40619,61423)# My very secret messagetop_secret_message=666# RSA encryptionencrypted=top_secret_message**public_key# RSA decryptiondecrypted=encrypted**private_key# My secret message have been correctly encrypted and decrypted :-)assertdecrypted==top_secret_message

注意

  • Mod基于整数模运算%,而不是math.fmod
  • Modint之间操作的结果是Mod
  • Modfloat之间进行操作的结果是float

包文档:mod.Mod

安装

运行以下命令安装modpackage

pip3 install mod

指数

mod-版权所有(c)2017 Y.SOMDA,MIT License

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java在一个问题被连续正确回答三次/并添加差异后,我如何将程序循环回开始   Java中未实例化的匿名类   java如何在Android中录制视频,只允许横向模式和最长时间录制时间   java从另一个活动发送实时消息   多线程java线程和互斥   java禁用Spring安全日志   JAVA伊奥。StreamCorruptedException:在与子级和父级ProcessBuilder通信时写入子级中的标准输出时,流头无效   使用Java(HttpURLConnection)对Restheart进行身份验证(对于Mongodb)   java如何解决Jenkins中的SAXParseException?   java为什么我需要mockito来测试Spring应用程序?   计算sin-cos和tan时缺乏精度(java)   java Hibernate。不同项目中相同一对一映射的不同行为   java图像滑块:如何使用JavaFX将图像放在另一个图像上   java Mockito在使用when时抛出NotAMockException   http Java servlet发送回响应