Python语言与程序设计_第二周

本文深入探讨Python语言,强调其通用性、简洁性和强大的计算生态。介绍了Python在不同计算时代的角色,以及2018年后的计算环境。通过实例展示了如何使用turtle库进行图形绘制,解析了turtle库的坐标体系、颜色系统和核心函数,帮助初学者理解Python编程和图形绘制的基本概念。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

第二周

2.1深入理解Python语言
背景

1946 - 1981 计算机系统结构时代 计算能力问题

1981 - 2008 网络和视窗时代 交互问题

2008 - 2016 复杂信息系统时代 数据问题

新计算时代

2017 - 人工智能时代 人类自身问题


编程语言
  • C ++诞生于计算机系统结构时代,用来写操作系统的语言++

-学习内容: 指针、内存、数据类型

-语言本质: 理解计算机系统结构

-解决问题: 性能

  • JAVA ++诞生于网络和视窗时代++

-学习内容: 对象、跨平台、运行时

-语言本质: 理解程序设计过程中主体和客体之间的关系

-解决问题: 跨平台,程序交互问题

  • C++ ++C语言的演进,具有面向对象的特点++

-学习内容: 对象、多态、继承

-语言本质: 理解主客体关系

-解决问题: 大规模程序

  • VB(.NET)++诞生于网络视窗时代++

-学习内容: 对象、按钮、文本框

-语言本质: 理解人机之间交互逻辑

-解决问题: 桌面应用

  • Python ++发展于复杂信息系统时代++

-学习内容: 编程逻辑、第三方库

-语言本质: 理解问题求解

-解决问题: 各类问题的计算部分的实现


2018年以后的计算环境
  • 计算机性能不再是解决一般问题的瓶颈
  • 移动互联网普及
  • 计算需求增加

Python语言特点

(通用语言、脚本语言、开源语言、跨平台语言、多模型语言、粘性语言)

  • 通用语言

可以用于普适的计算问题求解的开发

  • 语法简洁

强制可读性;较少的底层语法元素;多种编程方式;支持中文字符

简洁意味着:

短的编程时间、少的调试工作量、良好的维护体验

缩短近10倍的代码量

  • 生态高产

快速增长的计算生态,避免重复造轮子

提高10倍产出

如何看待Python
  • 最高产
  • 掌握抽象并求解计算问题综合能力的语言
  • 解决复杂计算问题
超级语言
  • 粘性整合已有程序,具有庞大计算生态
  • 集成开发,复用
实例2:Python蟒蛇绘制

用程序绘制一条蟒蛇

问题分析:

  • 计算机绘图是什么原理?
    程序为何能产生窗体?为何能在窗体上绘制图形?

  • Python蟒蛇绘制从哪里开始?

代码编写:

import turtle
turtle.setup(650,350,200,200)
turtle.penup()
turtle.fd(-250)
turtle.pendown()
turtle.pensize(25)
turtle.pencolor("purple")
turtle.seth(-40)
for i in range(4):
    turtle.circle(40,80)
    turtle.circle(-40,80)
turtle.circle(40,80/2)
turtle.fd(40)
turtle.circle(16,180)
turtle.fd(40*2/3)
turtle.done()
2.3海龟库turtle
  • turtle库基本介绍
  • turtle绘图窗体布局
  • turtle空间坐标体系
  • turtle角度坐标体系
  • RGB色彩体系
turtle库概述

Python标准库之一

turtle的原理:

想象一只海龟在窗体正中心,在画布上游走,走过的轨迹形成了绘制的图形

有点致敬logo语言的意思

turtle的绘图窗体

设置启动窗体的位置和大小

turtle.setup(width,height,startx,starty)   
turtle的空间坐标体系
  • 绝对坐标

    turtle.goto(100,100)

  • 海龟坐标

    前进:turtle.fd(d)
    后退:turtle.bk(d)
    转弯:turtle.circle(r,angle)

turtle的角度坐标体系
  • 绝对角度

    turtle.seth(angle)

  • 海龟角度

    turtle.left(angle)
    turtle.right(angle)

RGB色彩体系

turtle库默认采用小数来表示颜色,使用

turtle.colormode(mode)
-1.0:RGB小数值
-255:RGB整数值

来改变色彩数值模式

2.4 turtle程序语法元素分析
  • 库引用与import
  • turtle画笔控制函数
  • turtle运动控制函数
  • turtle方向控制函数
  • 基本循环语句与range函数
库引用与import
  • 库引用

python引用第三方库

  • from <库名> import <函数名>

这样可以简化每一次都要写<库名>.<函数名>,直接使用函数名就可以了

  • import <库名> as <库别名>

给调用的外部库,起一个更短更适合自己的名字

画笔控制函数
  • penup()

又名turtle.pu(),画笔抬起,画笔运动轨迹不在画布上形成图案

  • pendown()

又名turtle.pd(),画笔落下,画笔运动轨迹在画布上形成图案

  • pencolor()

又名turtle.width()

  • pensize()

可以用RGB值或者颜色字符串

颜色字符串:turtle.pencolor("purple")
RGB的小数值:turtle.pencolor(0.63,0.13,0.94)
RGB的元组值:turtle.pencolor((0.63,0.13,0.94))
turtle运动控制函数

控制海龟行进:走直线&走曲线

走直线:turtle.forword(d) / turtle.fd(d)

走曲线:turtle.circle(r,extent =None)

    半径为r,角度extent
    默认情况圆心在海龟前进方向左侧r距离处
turtle方向控制函数

控制海龟面对的方向

绝对角度:
turtle.setheading(angle) / turtle.seth(angle)

海龟角度:
turtle.left(angle)
turtle.right(angle)
循环语句与range()函数
循环结构:

    for <变量> in range(<循环次数>) 
    变量从 0 到 range - 1 次循环

range()函数:

    产生循环计数序列
    range(N):产生 0 到 N - 1,共N个
    range(M,N):产生 M 到 N - 1,共N-M个
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值