Skip to main content

No project description provided

Project description

hyc库介绍

简介

名称:hyc库

hyc意为Help you calculate(帮助您计算)

版本号:3.2.0rc1候选发布

3.2.0rc1相比于3.2.0β1测试版 体验感得到了优化,修复了一些小问题

版本稳定性:92%以上

该版本稳定性与正式版相差不大

本次更新时间:2021年8月17日

点击我跳转到GitHub界面哦~

更新记录:

3.2.0rc1候选发布版本

  • 修复了介绍中不准确的描述
  • 对3.2.0β1测试版的代码进行了检测,发现并修复了一些bug

所有被修复的问题

  • 修复了fraction()对象作为一个列表被打印时返回[<fraction.fraction object at ...>]的问题,将__str__()函数替换为__repr__()函数
  • __float__()函数自动保留到小数点后第二位的功能 取消了

3.2.0β1测试版

  • 增加了分数计算的 整除
  • 分数可以和整数 直接运算,不需要再用convert()函数转换,且分数 位置随意,如下

3.1.0版本

# 表示2分之1加5
a = fraction(2,1)
b = convert(5)
print(a+b)
--------------------
控制台
5又2分之1

3.2.0β1测试版

# 表示2分之1加5
a = fraction(2,1)
print(a+5)
--------------------
控制台
5又2分之1
  • 增加了比较运算符功能,使分数之间可以进行比较,如下
a = fraction(2,1)
b = fraction(3,1)
print(a<b, a<=b, a==b, a>b, a>=b, a!=b)
---------------------------------
控制台
False False False True True True
  • __str__()函数修改,改为支持带分数

3.1.0版本(最新正式版)

  • 增加了分数计算的 开方计算
  • 增加了fraction模块的convert()函数,可让整数和小数直接化为fraction类型, 直接和分数进行运算

3.0.0版本

  • 3.0.0正式版正式上线Pypi,相比于3.0.0β1测试版修复了一些fraction模块的bug以及进行了一些调整

调整内容

  • 规范了介绍的一些问题
  • 规范了fraction()类参数的命名

所有被修复的问题

  • 修复了float()转换和int()转换错误的问题
  • 由于出现了bug,移除了__float__()方法的rounding (四舍五入位数) 参数,__float()__方法改为自动四舍五入到百分位

3.0.0β1测试版(稳定性相当于2.x版本)

  • 对3.0.0α2测试版的README.md进行了一些调整,修复了介绍不准确、遗漏的问题
  • 对3.0.0α2的num模块进行了全面测试,修复了一些bug,将3.0.0α2的稳定性提升到β级别

所有被修复的问题

  • pri_fac函数返回的是参数='质因数1*质因数2*...'字符串,在2.0.x版本中则是返回参数='质因数1*质因数2*...*1'字符串,但是3.0.0α2版本返回的是2.0.x版本的字符串
  • per_num函数在参数为完全数时返回True,但参数不为完全数时不返回值,于是我们增加了一个else分支

3.0.0α2测试版(num模块存在bug,不推荐使用)

  • 将fraction()类中加减乘除需要加[]的方法进行了优化,变为了直接计算,如下图所示

3.0.0α1测试版

a = fraction(2, 1)
b = fraction(5, 1)
a + [b]

3.0.0α2测试版

a = fraction(2, 1)
b = fraction(5, 1)
a + b

3.0.0α1测试版(不推荐使用)

  • fraction模块代码大重做,移除分数四则运算、约分等内容,添加涵盖四则运算、约分、分数化小数等功能的fraction类
  • 添加参数注释
  • 简介更新

2.2.0版本

  • 添加介绍
  • 添加“更新记录”

2.1.2.post1版本

  • 优化系统稳定性

2.1.2版本

  • 优化系统稳定性

2.1.1版本

  • 修复显示bug

2.1.0版本

  • 删除报错
  • 删除介绍英文

2.1.0版本之前

  • 暂无记录

下载方式:

pip install hyc

导入方式:

1.

import hyc.模块

2.

from hyc import 模块

3.

from hyc.模块 import *

hyc库内部结构:

hyc
├─fraction
│  ├─den_di()
│  ├─covert()
│  └─fraction()类
│      ├─opposide()方法
│      ├─red_fr()方法
│      ├─simp_fr()方法
│      ├─__add__()和__radd__()加法
│      ├─__float__()方法(分数化小数并保留位数)
│      ├─__init__()方法
│      ├─__int__()方法(fraction对象化整数)
│      ├─__mul__()和__rmul__()乘法
│      ├─__str__()方法(分数读作)
│      ├─__sub__()和__rsub__()减法
│      ├─__turediv__()和__rturediv__()除法
│      ├─__floordiv__()和__rfloordiv__()整除
│      ├─__matmul__()开方
│      └─__le__() __lt__() __eq__() __ne__() __gt__() __ge__()比较运算符
└─num
    ├─factor()
    ├─pri_num()
    ├─per_num()
    ├─even_num()
    ├─lcm()
    ├─hcf()
    ├─pri_fac()
    └─comprime()

使用方式:

通过调用函数或类完成您想要达成的效果

num模块

1.factor()

该函数是用来寻找一个数的所有因数的,请在括号内填入一个数字,该函数就可以找出括号内数字的所有参数

示例
print(factor(9))
----------------
控制台
[1, 3, 9]

2.per_num()

该函数是用来判断一个数是否为完全数的,请在括号内填入一个数字,该函数返回True或False

示例
print(per_num(9))     print(per_num(27)
----------------     ------------------
控制台                 控制台
False                 True

3.pri_num()

该函数是用来判断一个数是否为质数的,请在括号内填入一个数字,该函数返回True或False

示例
print(pri_num(9))     print(pri_num(2)
----------------     ------------------
控制台                 控制台
False                 True

4.even_num()

该函数是用来判断一个数是否为偶数的,请在括号内填入一个数字,该函数返回True或False

示例
print(per_num(9))     print(per_num(28)
-----------------     ------------------
控制台                 控制台
False                 True

5.lcm()

该函数是用来寻找几个数的最小公倍数的,请在括号内填入一个包含两个或以上数字的列表,请勿填入字符串、浮点数

示例
print(lcm([5, 9]))
-------------------
控制台
45                    

6.hcf()

该函数是用来寻找几个数的公因数和最大公因数的,请在括号内填入一个包含两个或以上数字的列表,请勿填入字符串、浮点数;该函数会返回两个值,前一个值为两个数所有的公因数列表,后一个值为两个数的最大公因数

示例
print(hcf([5, 15]))
-------------------
控制台
[1, 5], 5

7.pri_fac()

该函数是用来分解一个数的质因数的,请在括号内填入一个数字,该函数返回‘括号内的数 = 质因数1 * 质因数2 * ...’字符串

示例
print(pri_fac(5))
------------------
控制台
150 = 2*3*5*5              

8.coprime()

该函数是用来该函数是用来判断几个数是否为互质数的,请在括号内填入一个包含两个及以上数字的列表,该函数返回True或False

示例
print(coprime([9, 12]))     print(coprime([2, 3])
-----------------------     ---------------------
控制台                       控制台
False                       True

fraction模块

请注意:在hyc库里,分数请先用name=fraction(分母,分子)转换name为fraction类型后再使用

9.den_di()

该函数是用来通分的,请在函数内填入一个分数列表,该函数可以将分数列表中的所有分数化为同分母分数

示例
a = fraction(5, 2)# 代表五分之二
b = fraction(9, 1)# 代表九分之一
print(den_di([a, b]))
--------------------------------
控制台
[45分之18, 45分之5]

10.convert()

该函数可以直接将整数和小数化为fraction类型

示例
a = convert(9.5)
b = convert(8)
print(a, b, a + b)
--------------------------------
控制台
9又2分之1 1分之8 17又2分之1

11.fraction

fraction类是fraction模块中最主要的部分,它会创建一个分数对象,如a=fraction(5, 2)就可以创建五分之二这个分数;也支持带分数,比如a=fraction(6, 1, num=5)就可以创建五又六分之一这个分数,其中的num表示带分数的 整数部分

其中的__int__()函数和__float__()基本原理相同,都是将分数化为整数(或小数)

示例
a = fraction(4, 2)
print(int(a))# 将4分之2化为整数
-----------------------------
控制台
1

这段代码,就是将4分之2化为整数,因为4分之2等于0.5,0.5四舍五入等于1,因此返回1

__float__()函数与__int__()函数的不同点在于__float__()函数是直接将对象化为小数,而不是保留到个位

示例

a = fraction(8, 1)
print(float(a))
---------------------------------------
控制台
0.125

8分之1等于0.125,因此返回0.125

除了__int__()__float__()函数,还有__repr__()函数,用于控制对象的名称,比如fraction(2, 1)就是2分之1;也支持带分数,如fraction(9, 5, num=3)3又9分之5fraction(9, 32)也为3又9分之5

剩下的red_fr()simp_fr()opposide()函数除了调用方式是

a = fraction(分母,分子)
a.函数()

其余用法与2.2.0版本 相同

剩下的就是加减乘除四则运算了,可以直接运算

示例
a = fraction(5, 1)
b = fraction(4, 1)
c = fraction(3, 1)

print(a + b + c)
---------------------------------------
控制台
60分之47

当然,示例中的+可以替换成-*/,但暂时不支持//

不仅如此,还有 开方运算

示例
a = fraction(5, 1)

print(a**2)

但请注意,只支持a**2不支持 2**a

混合运算 也是可以的

示例
a = fraction(3, 1)
b = fraction(6, 1)
c = fraction(3, 2)
print(a + b * c)
---------------------------------------
控制台
9分之4

也可以做出整数或小数与分数运算的效果

示例
a = fraction(2,1)
print(a+5)
--------------------
控制台
5又2分之1

分数、整数和小数之间还可以进行比较

示例
a = fraction(9,2)
b = fraction(9,1)
print(a<b, a<=b, a==b, a!=b, a>b, a>=b, a<1, a<1.1)
----------------------------------------------------
控制台
False False False True True True False False

但值得注意的是,只能分数<整数(小数),不能整数(小数)>分数 (比较运算符前必须是分数)

分数计算小软件

如果您觉得hyc库的分数计算太过于麻烦,请点击这里

希望对您有所帮助

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

hyc-3.2.0rc1-py3-none-any.whl (7.6 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page