一、python中一切皆为对象,什么是对象?
程序设计的思路有两种:
1,面向过程的程序设计: 分析出解决问题所需要的步骤,然后用函数一步步实现,实现时一个个依次调用。
2,面向对象的程序设计:模拟人类的思维方式,把构成问题的事物分解成各个对象。
万物皆对象
我的理解:学生每天早上:起床、穿衣、洗脸刷牙、上学
面向过程:按顺序,,先起床后穿衣后洗脸刷牙后上学,一个个做,顺序很重要
面向对象:打包成“学生”,里面有4个方法,分别是起床、穿衣、洗脸刷牙、上学,随便先干哪件都行。
二、面向对象的基础知识——类
在面向对象,类是具有相同属性和方法的一组对象的集合。有类名,有属性有方法。
class 人类()
身高 = # 属性
性别 = # 属性
年龄 = # 属性
def 吃饭() # 方法
类的三个特性:
封装性:就是把属性和方法都封装在一起
继承性:子类继承父类的属性和方法
多态性:就算子类继承了父类的属性和方法,子类也可以有自己的属性和方法
三、面向对象的程序设计
class 创建类
__init__方法,开始和结尾都是双下划线,初始化对象。不懂没关系,先打代码,一行行的去理解
class Person:
population = 0
def __init__(self, name):
self.name = name
print('(初始化... %s)' % self.name)
Person.population = + 1
def __del__(self):
print('%s 走了。' % self.name)
Person.population -= 1
if (Person.population == 0):
print('我是最后一个人。')
else:
print('还有 %d 个人在线。' % Person.population)
def sayHi(self):
print('大家好,我的名字是 %s' % self.name)
def howMany(self):
if Person.population == 1:
print('只剩下我一个人了。')
else:
print('一共有 %d 个人在这里。' % Person.population)
ming = Person('小明')
ming.sayHi()
ming.howMany()
hong = Person('小红')
hong.sayHi()
hong.howMany()
ming.sayHi()
ming.howMany()
四、海龟绘图基础知识
import turtle
# 运动命令
turtle.forward() # 前进
turtle.backward() # 后退
turtle.right() # 向右转
turtle.left # 向左转
turtle.setheading() # x轴方向为0度,逆时针转动多少度
turtle.goto(x,y) # 移动到(x,y)坐标
turtle.speed() # 绘制速度[0,10]
turtle.pendown() # 下笔
turtle.penup() # 提笔
turtle.circle(r,extent) # 绘制圆形,r为半径,extent为度数,如180就画半圆
turtle.setx(a) # 将当前x轴移动到指定位置
turtle.sety(b) # 将当前y轴移动到指定位置
turtle.home() # 设置当前画笔位置为原点,朝东
turtle.dot(r,color) # 绘制一个指定直径和颜色的圆点
# 画笔控制命令
tuurtle.fillcolor(colorstring) # 绘制图形的填充色
turtle.color(color1,color2) # 同时设置pencolor,fillcolor
turtle.filling() # 返回当前是否在填充状态
turtle.begin_fill() # 准备开始填充
turtle.end_fill() # 填充完成
turtle.hideturtle() # 隐藏画笔形状
turtle.showturtle() # 显示画笔形状
# 全局控制命令
turtle.clear() # 清空窗口,但turtle位置和状态不变
turtle.reset() # 清空窗口,还原turtle
turtle.undo() # 撤销上一个动作
turtle.isvisible() # 返回当前turtle是否可见
turtle.stamp() # 复制当前图形
turtle.write(s,font=('fontname',font_size,'font_type')) # 插入文本内容
五、海龟绘图例子
喜欢画画的可去看视频看代码
六、python与科学计算
科学计算常用库:numpy, matplotlib, scipy
都是高大上的东西。。以后再慢慢补
Python语言程序设计 课程结束 |