精华内容
下载资源
问答
  • Python画同心圆(适合基础练习)

    千次阅读 2021-01-14 12:06:33
    Turtle库运用数学中坐标系的概念,在一个横轴为x、纵轴为y的坐标系原点,也就是(0,0)位置开始,它根据一组函数指令的控制,在这个平面坐标系中移动,从而在它爬行的路径上绘制了图形。 2.Turtle库坐标体系(熟记) ...

    开始学习python这门课的时候,第一个认识的就是如何导入turtle库和运用turtle库。

    1.Turtle库介绍

    Turtle库是Python语言中一个很流行的绘制图像的函数库,turtle中文意思是海龟,也就是我们把画画,想象成一只海龟爬行的路线。Turtle库运用数学中坐标系的概念,在一个横轴为x、纵轴为y的坐标系原点,也就是(0,0)位置开始,它根据一组函数指令的控制,在这个平面坐标系中移动,从而在它爬行的路径上绘制了图形。

    2.Turtle库坐标体系(熟记)

    在这里插入图片描述

    import turtle
    
    t = turtle.Pen()  # 获得画笔
    
    my_color = ("red", "green", "yellow", "blue")
    t.width(4)  # 画笔宽度
    t.speed(0.2)  # 画笔画的速度
    for i in range(10):  # 0,1,2,3,4
        t.penup()  # 抬起笔
        t.goto(0, -i * 10)
        t.pendown()  # 放画笔
        t.color(my_color[i % len(my_color)])  # 对my_color的数量取余数
        t.circle(10 + i * 10)      # 半径100
    turtle.done()                  # 程序执行完,窗口仍然在
    

    在这里插入图片描述

    展开全文
  • 假设想要计算一个半径为3的圆的面积,首先将整个圆分成几个同心圆。我们以内部的一个半径为r(0<r<3)的圆环为例,试图找出这个圆环的面积。那么将这个圆环变形展开,能得到一个近似的长方形,它的...

    今天开始回忆或者说重学一下微积分,在此记录一下课程总结以及拓展。


    我们都知道圆的面积是,但是,为什么呢?我们来看一下这个公式的由来。仔细观察我们就能发现了解的微积分中的几个idea:积分,导数。

    假设想要计算一个半径为3的圆的面积,首先将整个圆分成几个同心圆。


    我们以内部的一个半径为r(0<r<3)的圆环为例,试图找出这个圆环的面积。


    那么将这个圆环变形展开,能得到一个近似的长方形,它的长度为,宽度和切分圆环的粒度有关。可以假设这个宽度为  ,可能等于0.1。


    那么可以得到这个圆环的面积,  越小,越能近似面积 。

    现在一个圆的面积分解为多个圆环的面积总和,而这个圆环的近似面积


    现在我们有这样一个坐标轴,横坐标是r,那么原始圆的半径为3,等分后每一部分的长度为。将每一个圆环依次展开在坐标轴上可以得到每一个圆环对应的近似长方形的高度为。而他们在坐标轴上组成的面积就是圆的面积。


    之前提到,越小,越能近似面积。当 越小时,我们能发现组成的面积近似于一个直角三角形。面积恰好为 

    好了,至此我们就巧妙的得到了圆的面积。

    这个思想就是,将一个难的问题转换为多个小问题值的和,从图形下面积的和得到近似问题解。

    加速行驶汽车的路程也是这个思想。


    好了,下面来看一下微积分概念


    其中,曲线图形 与坐标轴围成的面积A(x)就是  的积分(Integral)。

    变化区域对应的面积为,而  即 

    拓展为一般函数f(x),那么 ,当,近似效果最好。其中 就是A的导数(Derivative),导数的其他形式在日后节分享。


    至此,我们引出了两个可以互相转化的概念积分和导数,具体细节将在以后章节中给出。

    我们的题目叫做圆的面积怎么来?我们已经通过近似方法得到了圆的面积公式,那么其中的常数  是怎么计算的呢?下一节中将介绍其中一种思想。 


    Reference

    此博文图片和内容均来自于 https://www.youtube.com/channel/UCYO_jab_esuFRV4b17AJtAw




    展开全文
  • 首先我们学习列表的概念,用列表记录实现...然后学习一种新的鼠标交互方式,用鼠标移动点击来增加绘制同心圆。本章案例最终代码一共38行,代码参看:配套资源\第4章\4-5.py,视频效果参看:配套资源\第4章\疯狂的小...

    4 疯狂的小圆圈

    图书简介可以看这里:

    童晶:《Python游戏趣味编程》新书上架了

    本章我们将实现一个好玩的程序,鼠标点击后,会在点击处出现一些同心圆圈,并在窗口中四处反弹,效果如图4-1所示。首先我们学习列表的概念,用列表记录实现多个小球的反弹;然后学习一种新的鼠标交互方式,用鼠标移动点击来增加绘制同心圆。

    本章案例最终代码一共38行,代码参看:配套资源\第4章\4-5.py,视频效果参看:配套资源\第4章\疯狂的小圆圈.mp4。

    import pgzrun  # 导入游戏库
    import random  # 导入随机库
    WIDTH = 800   # 设置窗口的宽度
    HEIGHT = 600  # 设置窗口的高度
    balls = []  # 存储所有小球的信息,初始为空列表
    
    def draw():   # 绘制模块,每帧重复执行
        screen.fill('white')  # 白色背景
        for ball in balls:  # 绘制所有的圆
            screen.draw.filled_circle((ball[0], ball[1]), ball[4], (ball[5], ball[6], ball[7]))
            for x in range(1, ball[4], 3): # 用同心圆填充
                screen.draw.filled_circle((ball[0], ball[1]), ball[4]-x, (random.randint(
                    ball[5], 255), random.randint(ball[6], 255), random.randint(ball[7], 255)))
    
    def update():  # 更新模块,每帧重复操作
        for ball in balls:
            ball[0] = ball[0] + ball[2]   # 利用x方向速度更新x坐标
            ball[1] = ball[1] + ball[3]   # 利用y方向速度更新y坐标
            if ball[0] > WIDTH-ball[4] or ball[0] < ball[4]:  # 当小球碰到左右边界时,x方向速度反转
                ball[2] = -ball[2]
            if ball[1] > HEIGHT-ball[4] or ball[1] < ball[4]:  # 当小球碰到上下边界时,y方向速度反转
                ball[3] = -ball[3]
    
    def on_mouse_move(pos, rel, buttons): # 当鼠标移动时
        if mouse.LEFT in buttons:         # 当鼠标左键按下时
            x = pos[0]   # 鼠标的x坐标,设为小球的x坐标
            y = pos[1]   # 鼠标的y坐标,设为小球的y坐标
            speed_x = random.randint(1, 5)  # 小球x方向的速度
            speed_y = random.randint(1, 5)  # 小球y方向的速度
            r = random.randint(5, 50)      # 小球的半径
            colorR = random.randint(10, 255)  # 小球的三个颜色分量
            colorG = random.randint(10, 255)
            colorB = random.randint(10, 255)
            # 存储小球所有信息的列表
            ball = [x, y, speed_x, speed_y, r, colorR, colorG, colorB]
            balls.append(ball)  # 把第i号小球的信息添加到balls中
    
    pgzrun.go()   # 开始执行游戏

     

    练习4-4:尝试修改4-5.py,实现用鼠标写字画图的程序,得到类似的效果:

    import pgzrun  # 导入游戏库
    import random  # 导入随机库
    WIDTH = 1200   # 设置窗口的宽度
    HEIGHT = 800  # 设置窗口的高度
    balls = []  # 存储所有小球的信息,初始为空列表
    
    def draw():   # 绘制模块,每帧重复执行
        screen.fill('white')  # 白色背景
        for ball in balls:  # 绘制所有的圆
            screen.draw.filled_circle((ball[0], ball[1]), ball[2], (ball[3], ball[4], ball[5]))
            for x in range(1, ball[2], 3): # 用同心圆填充
                screen.draw.filled_circle((ball[0], ball[1]), ball[2]-x, (random.randint(
                    ball[3], 255), random.randint(ball[4], 255), random.randint(ball[5], 255)))
    
    def on_mouse_move(pos, rel, buttons): # 当鼠标移动时
        if mouse.LEFT in buttons:         # 当鼠标左键按下时
            x = pos[0]   # 鼠标的x坐标,设为小球的x坐标
            y = pos[1]   # 鼠标的y坐标,设为小球的y坐标
            r = random.randint(10, 20)      # 小球的半径
            colorR = random.randint(10, 255)  # 小球的三个颜色分量
            colorG = random.randint(10, 255)
            colorB = random.randint(10, 255)
            # 存储小球所有信息的列表
            ball = [x, y, r, colorR, colorG, colorB]
            balls.append(ball)  # 把第i号小球的信息添加到balls中
    
    pgzrun.go()   # 开始执行游戏

    分步骤代码、讲解视频可以从异步社区下载:

    https://www.epubit.com/bookDetails?id=UB72096d97d6149

    分步骤代码也可以直接从这里下载:

    联想Filez

     

    v2-863b624732d9941cf54d2410215d5d2a_b.jpg

    这一章主要学习了列表的基本语法与应用、鼠标交互等知识点。利用列表,我们就可以记录、处理大量的数据;用户使用鼠标和程序互动,可以带来更加直观多样的交互效果。利用这些知识点,开发了疯狂小圆圈的趣味程序,读者也可以尝试实现更加有趣的交互、可视化效果。

     

    展开全文
  • Spark推荐系统,干货,心得 点击上方蓝字关注~人工智能与机器学习、深度学习的区别从上面三个同心圆的图像中可以看出,DL(深度学习)是ML(机器学习)的子集,M...
        

    640?wx_fmt=png

      Spark推荐系统,干货,心得 

      点击上方蓝字关注~

    人工智能与机器学习、深度学习的区别

    640?wx_fmt=jpeg


    从上面三个同心圆的图像中可以看出,DL(深度学习)ML(机器学习)的子集,ML(机器学习)也是AI(人工智能)的子集。

    因此,人工智能是一个包罗万象的概念,最初爆发,然后是ML,后来蓬勃发展,最后DL是有望将人工智能的进步提升到另一个水平。


    人工智能是什么 =》拟人

    人工智能:包括的范围很广,数据挖掘,机器学习,深度学习等。


    机器学习(Machine Learning):根据已有的数据,找出规律,对未知的数据进行预测

    对于一个任务T,随着经验E的增加,在该任务上的表现P得到提高。

    数据 (data) + 算法 (algo) =>模型(model)------->预测(predict)

    机器学习(Machine Learning)中,数据决定机器学习的上限,算法只能逼近这个上限



    机器学习任务分类:

    监督学习任务:数据给出了明确的预测目标。

       任务分类:分类(classification),回归(regression)

       分类(classification)任务:预测目标是离散值

       包括算法:knn(k最近邻),Logistic Regression(逻辑回归),Decision Tree(决策树),SVM(支持向量机),Naive Byes(朴素贝叶斯),RF(随机森林),GBDT(梯度提升树),XGBoost,ANN(神经网络)等等

       回归(regression)任务:预测目标是连续值

       包括算法:knn(k最近邻), Linear Regression(线性回归), Lasso,Ridge, RF(随机森林), GBDT(梯度提升树), XGBoost, ANN(神经网络)等等

     

    非监督学习任务:数据没有明确的预测目标。

       任务分类:聚类(clustering),降维(Dimensionality reduction)

       聚类(clustering):对原始数据进行分组

       包括算法:kmeans,dbscan,GMM,谱聚类等。

       降维(Dimensionality reduction):对原始数据的特征进行维度降低(减少)

       包括算法:PCA,LDA,SVD

     

    半监督学习任务:有部分数据有明确的预测目标,有部分数据没有。

     

    机器学习中常见的术语

    样本sample:指某一个随机事件的发生。

    样本集又称为数据集data set,多个独立随机事件的发生

    训练集training set:数据集中用于训练模型的数据

    测试集testing set:数据集中用于验证模型的数据

    一个数据集中的训练数据一般为2/3-3/4

    特征:样本的某个属性。在数据库中称为字段,在oop称为属性

    特征向量:多特特征的组合

    维度:特征向量中特征的个数

    标签label:预测的目标列。又称为类标签(class label)。或者是输出数据。用Y来表示.Y表示输出数据集,y表示某一个输出数据。

    输入数据:数据集中除标签列以外的数据。用X表示输入数据集,x表示某一个输入数据。

    所以机器学习其实做的就是 X>Y 的映射。映射的函数就是算法,映射函数的参数就是模型。训练的过程就是找出参数的过程。

    640?wx_fmt=jpeg

    推荐阅读:

    机器学习中一些基础的数学

    Spark特征工程

    Spark梯度下降法

    ChiSqSelector卡方选择器

    640?wx_fmt=jpeg

    长按识别二维码关注我们

    展开全文
  • Linux中Inode概念

    2018-01-24 13:02:00
    Linux中Inode概念Linux中Inode 要理解Inode,就要从文件存储说起。文件存储在硬盘上,那么硬盘中最小存储单位叫做"扇区",这里简单...在单个盘片上,从里到位有很多个同心圆,每个同心圆叫做磁道(Track) 从...
  • 我们所说个人信息是什么(使用一系列同心圆,在个人,私人,亲密,独特和核心身份之间进行区分); 影响涉及匿名行为和匿名判断一些主要因素是什么(例如,交流结构和所涉及活动类型); 支持或反对...
  • 硬盘与光盘不同,硬盘是一个一个同心圆,每一个同心圆就是一个磁道,磁道从外向内编号,一般一个簇是两个扇区(也可能是4个,八个,2n ) 硬盘结构 一个硬盘有许多个盘面,一个盘面有两面,从上到下分别是0面,1面...
  • 文件系统基本概念

    2020-05-05 16:04:12
    文件系统 : 一种把数据组织成文件和...磁盘每一面被分为很多条磁道,即表面上一些同心圆,越接近中心,圆就越小。而每一个磁道又按512个字节为单位划分为等分,叫做扇区 文件存储单位 块 - 文件存取最小单...
  • 1.人工智能(基础学科),是对人智能研究拓展 2.机器学习:模拟人行为,制造出有学习能力机器 3.深度学习:基于深度...2.三者是同心圆关系 (人工智能【基础学科】包括机器学习,机器学习包括深度学习) ...
  • 磁盘概念

    2014-01-19 23:34:04
    这些盘片一般是在以铝为主要成分片基表面涂上磁性介质所形成,在磁盘片每一面上,以转动轴为轴心、以一定磁密度为间隔若干个同心圆就被划分成磁道(track),每个磁道又被划分为若干个扇区(sector),数据...
  • linux块设备概念

    2020-04-27 08:51:03
    盘面中一圈一圈的同心圆为磁道,将磁道划分为若干弧段,每个弧段称为扇区。扇区是磁盘最基本单位,通常为512字节。 块是文件系统的的抽象,文件系统操作磁盘最小单位就是块。扇区是磁盘最小单位,所以块不能比...
  • 一、机器学习的概念 计算机模拟人的学习行为,以获取新的知识和经验,并重新组织已有的知识使之不断的完善。简单说就是,计算机从数据中学习出规律和模式,以...三者的关系可以用如下的同心圆进行表达。一种技术的发展
  • 扇区,顾名思义,每个磁盘有多条同心圆磁道,磁道被分割成多个部分。每部分弧长加上到圆心两个半径,恰好形成一个扇形,所以叫做扇区。扇区是磁盘中最小物理存储单位。通常情况下每个扇区大小是512字节...
  • 如图1所示,图中一圈圈灰色同心圆为一条条磁道,从圆心向外画直线,可以将磁道划分为若干个弧段,每个磁道上一个弧段被称之为一个扇区(图践绿色部分)。扇区是磁盘最小组成单元,通常是512字节。图2展示了由一...
  • 扇区:磁盘每面上存在多个同心圆磁道,每个磁道按512字节等分,每一部分叫做一个扇区。 簇:硬盘数据存储最小单位,与格式化磁盘时分配单元大小对应。如果选择大小为1024字节,即使是1字节文件,也会占用1024...
  • 扇区,顾名思义,每个磁盘有多条同心圆磁道,磁道被分割成多个部分。每部分弧长加上到圆心两个半径,恰好形成一个扇形(严格说应该是扇环),所以叫做扇区。扇区是磁盘中最小物理存储单位。通常情况下每个...
  • 硬盘最基本组成部分是由坚硬金属材料制成涂以磁性介质盘片,不同容量硬盘盘片数不等。...盘片表面上以盘片中心为圆心,不同半径的同心圆称为磁道。硬盘中,不同盘片相同半径磁道所组成圆柱称为...
  • 扇区,顾名思义,每个磁盘有多条同心圆磁道,磁道被分割成多个部分。每部分弧长加上到圆心两个半径,恰好形成一个扇形,所以叫做扇区。扇区是磁盘中最小物理存储单位。通常情况下每个扇区大小是512字节...
  • 硬盘最基本组成部分是由坚硬金属材料制...在DOS中每扇区是128×22次方=512字节, 盘片表面上以盘片中心为圆心,不同半径的同心圆称为磁道。硬盘中,不同盘片相同半径磁道所组成圆柱称为柱面。磁道与柱面都...
  • 再以最大的同心圆的直径来切割,形成一个个内角相等的扇形,在扇形内的磁道都是一段段圆弧,每段圆弧叫做一个扇区。磁盘驱动器以扇区为单位向磁盘读取和写入数据。(一个扇区=512个字节单位) 3、Linux下磁盘的命名...
  • 在仿真过程中,将齿坯离散为一个同心圆族,把将刀具刃锥面简化为一个锥面。并以求解代表齿坯的同心圆和代表刃锥面圆锥面交点数值分析方法为核心算法,构建起了整个仿真系统框架。解决了基于通用CAD(computer ...
  • 磁盘物理结构 磁盘是由若干块坚硬金属材料制成并涂以磁性...但打开硬盘,用户不能看到这些,实际上磁道是被磁头磁化的同心圆。磁道之间是有间隔,因为磁化单元太近会产生干扰. 扇区:每条磁道被分成若干等份
  • 页面哪一部分会拥有某个特定事件,例子:在纸上画一组同心圆,如果手指放在同心圆上,那么手指向不是一个圆,而是纸上所有圆。在页面中也是,如果点击了某个按钮,同时也单击了按钮容器元素,甚至也单击了...

空空如也

空空如也

1 2 3 4 5 6
收藏数 105
精华内容 42
关键字:

同心圆的概念