四时宝库

程序员的知识宝库

Python Turtle 使用‘类’ 画星星

import math as m
import random as rdm
import turtle as ttl
from turtle import Turtle
import turtle_snow as sn


class Pattern(Turtle):
# Pattern 继承Turtle类的所有方法
# 将画星星的方法变成Pattern的内置方法
    def draw_stars(self,x=0,y=0,r=1,heading=0):
        'x,y为星星的中心点坐标;r为中心点到角点的距离;heading为画笔的角度'
        self.color('yellow','yellow')   # 设置画笔颜色和填充颜色
        fd = 2*r*m.sin(m.radians(72))*(m.sin(m.radians(18)))/(
             m.sin(m.radians(180-36-18)))
# 根据画笔朝向角度计算画笔起点至中心点连线与Y轴夹角角度
        degree = heading + 72
# 根据中心点坐标计算画笔起点坐标
        newX = x - r*m.sin(m.radians(degree))     
        newY = y + r*m.sin(m.radians(90 - degree))
    
        self.up()
        self.setpos(newX,newY)    # 设置画笔起点坐标
        self.setheading(heading)  # 设置画笔朝向
        self.down()
        self.begin_fill()
        while True:
            self.fd(fd)
            self.left(72)
            self.fd(fd)
            self.right(144)
            if abs(self.pos() - (newX,newY)) < 1:
                break
        self.end_fill()
        self.hideturtle()

# 使用Pattern
p = Pattern()
ttl.screensize(600,600,'skyblue')
p.getscreen().tracer(60,0)
for i in range(30):
    x = 300 * rdm.random() * rdm.choice([-1,1])
    y = 300 * rdm.random() * rdm.choice([-1,1])
    r = rdm.randint(6,25)
    heading = 72 * rdm.random()
# 像调用turtle的各种方法一样,调用方法draw_stars
    p.draw_stars(x,y,r,heading)

详解:Python中的 实例方法、类方法、静态方法区别与作用

前言:

今天为大家带来的内容是Python 实例方法、类方法、静态方法的区别与作用,本文内容具有不错的参考意义,希望在此能够帮助到大家!

首先我们要知道的是,在Python中至少有三种比较常见的方法类型,即实例方法,类方法、静态方法。它们是如何定义的呢?如何调用的呢?它们又有何区别和作用呢?

这三种方法都定义在类中。下面我先简单说一下怎么定义和调用的。(PS:实例对象的权限最大。)

简单学Python——面向对象1(编写一个简单的类)

Python是一种面向对象的编程语言(Object Oriented Programming),在Python中所有的数据类型都是对象。在Python中,也可以自创对象。

什么是类呢?类(Class)是用来描述具有相同的属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。对象是类的实例。

定义类的语法如下:

class 类的名称():(类的名称的首字母要大写)

Python学习 -- 类的封装

当谈及面向对象编程(Object-Oriented Programming,OOP),封装是其中的一个重要概念。封装是指将数据和方法封装在一个单一的实体中,以达到隐藏内部实现细节、提供统一接口、提高代码可维护性等目的。在Python中,类的封装是实现OOP的核心,本篇博客将详细介绍Python中关于类的封装技术。

三十二、Python类的继承与多继承详解

继承是面向对象的三大特征之一,也是实现软件复用的重要途径。Python中的继承机制是多继承机制,即一个子类可以同时有多个父类。

1.继承的语法

Python子类继承父类的语法是在定义子类时,将多个父类放在子类之后的圆括号里。语法格式如下:

class 子类名称(父类1,父类2,...):
    # 类的定义部分

Python中关于魔法方法、单例模式的知识

目录:

init,del,add,str和 repr,call,单例模式,class,dict,doc,bases,mro

Python 知识点 #22 - 元类

在Python中,有一个称为元类(Metaclass)的概念,它是用于创建类的类。元类允许您在创建类时自定义类的行为、属性和方法。

自动化利器Python类实例方法、静态方法和类方法的区别和用法

带你走进 @ 机器人时代

Discover 点击上面蓝色文字

Python将装饰器定义为类

问题

你想使用一个装饰器去包装函数,但是希望返回一个可调用的实例。你需要让你的装饰器可以同时工作在类定义的内部和外部。

解决方案

为了将装饰器定义成一个实例,你需要确保它实现了 __call__() 和 __get__() 方 法。例如,下面的代码定义了一个类,它在其他函数上放置一个简单的记录层:

Python小案例61- 类与模块的关系

在Python中,类和模块是两个重要的概念,它们之间有一些关系。

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言
    友情链接