Python的Fraction模块用于处理有理数的算术运算。该模块允许我们创建有理数的实例,这些实例可以由整数、浮点数、数字、小数和字符串创建。

什么是有理数实例?

有理数实例可以使用一对整数创建,也可以从字符串或另一个有理数创建。这些实例是可散列的,应视为可变的。

如何创建有理数实例?

Fraction模块提供了以下内置函数,用于创建分数。让我们了解以下创建分数实例的方式。

  • class fractions.Function(numerator = 0, denominator = 1): - 此方法默认将分子分配为0,分母分配为1。如果分母等于0,它将引发“Zerodivision”错误。让我们了解以下示例。

示例 1

from fractions import Fraction  
print (Fraction(10, 37))  
# returns Fraction(11, 35)  
  
print (Fraction(11, 18))  
# returns Fraction(5, 9)  
  
print (Fraction())  
# returns Fraction(0, 1)  

输出:

10/37
11/18
0
  • class fractions.Fraction(other_fraction): 此方法接受数字的other_fraction实例。它返回具有相同值的有理数和分数实例。
  • class fractions.Fraction(float) - 此方法接受浮点数值并返回相同值的分数实例。

示例 2

from fractions import Fraction  
print(Fraction(1/12))  

输出:

6004799503160661/72057594037927936
  • class fractions.Fraction(decimal) :- 此方法接受十进制实例并返回具有相同值的实例。让我们了解以下示例。

示例 3

from fractions import Fraction  
print (Fraction('2.26'))  

输出:

113/50
  • class fractions.Fraction(string) : - 此方法接受字符串或Unicode作为参数,并返回具有相同值的实例。让我们了解以下示例。

示例 4

from fractions import Fraction  
print (Fraction('7/25'))  
print (Fraction('1.23'))  
print (Fraction('3/5'))  
print (Fraction('1.414213 \t\n'))  

输出:

7/25
123/100
3/5
1414213/1000000
  • limit_denominator(max_denominator=1000000) - 用于找到给定浮点数的近似值。它返回最接近self的分数,其分母为max_denominator。让我们了解以下示例。

示例 5

from fractions import Fraction  
print (Fraction('3.14159265358979323846'))  
print (Fraction('3.14159265358979323846').limit_denominator(10000))  
print (Fraction('3.14159265358979323846').limit_denominator(100))  
  
print (Fraction('3.14159265358979323846').limit_denominator(10))  
print (Fraction(125, 50).numerator)  
print (Fraction(125, 50).denominator)  

输出:

157079632679489661923/50000000000000000000
355/113
311/99
22/7
5
2

示例 6:对有理数执行数学运算

from fractions import Fraction  
print (Fraction(56, 12) + Fraction(18, 25))  
print (Fraction(5, 2) / Fraction(12, 10))  
print (Fraction(16, 15) * Fraction(26, 39))  
print (Fraction(18, 5) * Fraction(15, 36))  
print (Fraction(22, 5) ** Fraction(6, 10))  

输出:

404/75
25/12
32/45
3/2
2.4326050606703427

结论

在本教程中,我们讨论了Fraction模块及其一些重要方法。这些方法可用于复杂的数学计算和机器学习项目中。

标签: Tkinter教程, Tkinter安装, Tkinter库, Tkinter入门, Tkinter学习, Tkinter入门教程, Tkinter, Tkinter进阶, Tkinter指南, Tkinter学习指南, Tkinter进阶教程, Tkinter编程