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 的动态类型系统意味着变量的类型在运行时才确定。这使得代码更加灵活,但也带来了一些性能和调试上的挑战。例如,类型错误通常在运行时才会被发现,而不是在编译时。

posted @ 2025-04-25 08:54  lucky_doog  阅读(26)  评论(0)    收藏  举报