当前位置: 首页 > article >正文

《python语言程序设计》2018版第8章18题几何circle2D类(下部)

请添加图片描述

前言、从9.20激动发言到现在一直没有克制住的心情中,回到编程

  • 比如删掉我设计的导入第二个园的x,y,radius的函数
  • 我做了之前设计的变化.
  • 建立了两个可以将x,y拿出来的函数out
  • 计算两个坐标之间的距离
  • 利用已知的两个坐标之间的距离来比对第1个园里的半径,看第2个园的坐标是否在第一个园中
  • main代码的内容

把情绪从不停的幻想演讲,感觉中拉回来

又一次开始初始化.
第8章第4程序Rational给了我灵感,我可以设计一个添加second valid的

def __add__(self,second_contains):

来完成我的想法

第一章、精简中部里的代码

  • 比如删掉我设计的导入第二个园的x,y,radius的函数
  • 我做了之前设计的变化.
  • 建立了两个可以将x,y拿出来的函数out
  • 计算两个坐标之间的距离
  • 利用已知的两个坐标之间的距离来比对第1个园里的半径,看第2个园的坐标是否在第一个园中
  • main代码的内容

比如删掉我设计的导入第二个园的x,y,radius的函数

def set_have_two(self, x2, y2, radius2):
        self.__x2 = x2
        self.__y2 = y2
        self.__radius2 = radius2

直接将第2个园的坐标长度带入到第一个里面.
但是问题是,如何在初始化没有第2个园的信息中
完成诸如两个点之间距离的计算
对比我似乎有点把握了.参考了书中8.4Rational代码
但是计算我还没有把握.

第二章、将对象带入到另一个类中

  • 比如删掉我设计的导入第二个园的x,y,radius的函数
  • 我做了之前设计的变化.
  • 建立了两个可以将x,y拿出来的函数out
  • 计算两个坐标之间的距离
  • 利用已知的两个坐标之间的距离来比对第1个园里的半径,看第2个园的坐标是否在第一个园中
  • main代码的内容

今天检查完毕,接下来要迎接11月的ISO检查
另外10月份要瑜伽演出.我还帮别的老师带到汇演中,希望领导多给这些老师展示的机会.

我做了之前设计的变化.


class Circle2D:
    # 初始化
    def __init__(self, x, y, radius):
        self.__x1 = x
        self.__y1 = y
        self.__radius = radius

        # 针对获得第一个园的面积

    def get_area(self):
        return pow(self.__radius, 2) * math.pi

        # 针对第一个园的周长

    def get_perimeter(self):
        return 2 * math.pi * self.__radius

    def set_radius(self, radius):
        self.__radius = radius

    def print_radius(self):

    # 比对两个点之间的距离

    def have_between(self, other_x, other_y):
        a_t_valid = other_x - self.__x1
        b_t_valid = other_y - self.__y1
        return (pow(a_t_valid, 2) + pow(b_t_valid, 2)) * 0.05

        # 比对第2点是否在圆的里面

    def contains_points(self):
        return self.__radius.__lt__(Circle2D.have_between)
        # 比对第2个园是否在第1个园里

    def contain(self, other_radius):
        circle1 = self.__radius
        circle2 = other_radius
        if circle2 < circle1 and Circle2D.contains_points(self) is True:
            print("c1 contains the c2?, True.")
        else:
            print("c1 contains the c2?, False.")

结果失败的其中一个截图

请添加图片描述

第三章、我做到了可以将另一个园的信息导入到此园的信息中

  • 比如删掉我设计的导入第二个园的x,y,radius的函数
  • 我做了之前设计的变化.
  • 建立了两个可以将x,y拿出来的函数out
  • 计算两个坐标之间的距离
  • 利用已知的两个坐标之间的距离来比对第1个园里的半径,看第2个园的坐标是否在第一个园中
  • main代码的内容

建立了两个可以将x,y拿出来的函数out


    def out_x(self):
        return self.__x

    def out_y(self):
        return self.__y

计算两个坐标之间的距离

    def have_between(self, other_x, other_y):
        a_t_valid = other_x - self.__x
        b_t_valid = other_y - self.__y
        return (pow(a_t_valid, 2) + pow(b_t_valid, 2)) * 0.05

利用已知的两个坐标之间的距离来比对第1个园里的半径,看第2个园的坐标是否在第一个园中

    def contains_points(self,other):
        one_date=  self.__radius.__lt__(other)
        if one_date is True:
            print("The 2 Circle is in 1 Circle")
        else:
            print("The 2 Circle is not in 1 Circle")

main代码的内容

b = Circle2D(10, 10, 50)
a = Circle2D(5, 5, 20)
b.print_condition()
b.get_x(100)
b.get_y(10340)
b.print_condition()
between_date = b.have_between(a.out_x(), a.out_y())
b.contains_points(between_date)

请添加图片描述

第四章、结束语

  • 比如删掉我设计的导入第二个园的x,y,radius的函数
  • 我做了之前设计的变化.
  • 建立了两个可以将x,y拿出来的函数out
  • 计算两个坐标之间的距离
  • 利用已知的两个坐标之间的距离来比对第1个园里的半径,看第2个园的坐标是否在第一个园中
  • main代码的内容

我没有想到我能这么简单的解决这个问题.

out函数确实带来了我新的算法和想法.
期待下一个作品.但十一结束后,学院将会有大量的演出.我还要帮助更多老师做宣传.加油吧


http://www.kler.cn/a/320871.html

相关文章:

  • 牛客挑战赛77
  • SQL面试题——抖音SQL面试题 最大在线用户数
  • SQL Server 查询设置 - LIKE/DISTINCT/HAVING/排序
  • 【WPF】Prism学习(三)
  • 【Oracle篇】掌握SQL Tuning Advisor优化工具:从工具使用到SQL优化的全方位指南(第六篇,总共七篇)
  • OpenHarmony-1.启动流程
  • 2024准备去面试软件测试岗,高频面试题预测?
  • yarn : 无法加载文件 C:\Users\Rog\AppData\Roaming\npm\yarn.ps1,因为在此系统上禁止运行脚本
  • 深入浅出 AbstractQueuedSynchronizer (AQS)
  • SpringCloudEureka简介
  • Qt | linux+openCV+Qt6.5.3环境搭建成功版(带例子)
  • 网络高级day03(Http)
  • 短信视频评论dy版提取,免COOKIE 手机版本介绍说明
  • 前端中CSS选择器权重的问题
  • AccessClient在MacOS14 (sonoma)闪退无法调用远程桌面
  • Ubuntu上如何优雅下载huggingface上某个gguf模型文件
  • 【HarmonyOS鸿蒙应用开发者高级认证争议题】以下关于Taskpool和Worker的描述正确的是
  • 突发,OpenAI CTO离职
  • k8s的一些命令
  • c# Expression<Func<T, T>>转成实体
  • javascript中new操作符的工作原理
  • 使用lodash库实现防抖和节流
  • Easy Excel从入门到精通!!!
  • pg入门11-pg中的publications是什么
  • SpringBoot整合Lombok插件与使用说明
  • 微信小程序showLoading ,showToast ,hideLoading连续调用出现showLoading 不关闭的情况记录