250425 --- 质疑Python 理解 python
前言
最近在做一个COMP9021的项目,是python编码的
要完成七巧板的图形解析,涉及到不少数学运算
下面以分数类为例子,讲述我对 python 的理解。
Fraction
分数类,含有numerator和denominator,即分子分母2个成员

方法有 __str__ , minus()
Fraction增加to_float方法
class Fraction:
def __init__(self, value=None):
if value:
std_fraction = StdFraction(value).limit_denominator()
self.n = std_fraction.numerator
self.d = std_fraction.denominator
else:
self.n=0
self.d=1
self.is_i = False
def minus(self):
return self.n < 0
def to_float(self):
return self.n / self.d
def __str__(self):
if self.d == 1 and abs(self.n) !=1:
return str(abs(self.n))
elif self.d == 1 and abs(self.n) == 1 and self.is_i:
return ''
elif self.d == 1:
return f"{abs(self.n)}"
return f"{abs(self.n)}/{self.d}"

感受和总结
当0.6666出现的一刻,我觉得心里好舒服。感觉自己学到了知识,并且运用了出来。
Fraction是一个数学类型,我发现python真的很适合处理数学问题哦(以前怎么没发现啊,哈哈哈)
以前我只知道python速度慢,没有类型定义,很不方便调试
现在才理解,其实这是 python 为了数学计算做的取舍
因为如果数学类全都严格定义的话,可能代码量就太多了,也不方便阅读了。
python是面向对象的语言,而且弱类型,不像C是面向过程的。python足够灵活,适合做原型开发,构造一个大致的想法还是蛮好用的。
Python的特点
1. 简单快速
Python 的设计目标之一是让代码易于阅读和编写。这种简洁性使得开发者能够快速实现和调试代码,尤其是在数学计算和数据处理中。例如,Python 的动态类型系统允许你在不显式声明类型的情况下编写代码,这在快速原型开发中非常有用。
2. 动态类型系统
Python 的动态类型系统意味着变量的类型在运行时才确定。这使得代码更加灵活,但也带来了一些性能和调试上的挑战。例如,类型错误通常在运行时才会被发现,而不是在编译时。

浙公网安备 33010602011771号