【第二週】【課堂筆記】python基本圖形繪製
-
【第二週】【課堂筆記】python基本圖形繪製
本課概要:
2.1 深入理解Python語言
2.2 例項2:Python蟒蛇繪製
2.3 模組1:turtle庫的使用
2.4 turtle程式語法元素分析
2.1 深入理解Python語言
-
計算機技術的演進過程
計算機系統結構時代——>網路和視窗時代——>複雜資訊系統時代——>人工智慧時代
-
程式語言的多樣初心
-
C語言:
學習內容:指標,記憶體,資料型別
語言本質:希望程式設計者理解計算機系統結構,使得編寫的程式更加符合計算機的結構
解決問題:解決效能問題,考慮記憶體。
適用範圍:適用計算機底層程式的設計和開發
-
java語言
學習內容:物件,跨平臺執行,執行時
語言本質:理解程式設計過程中主體和客體之間的關係
解決問題:解決跨平臺執行問題。
適用:軟體類專業
-
c++
學習內容:物件,多型,繼承
語言本質:理解程式設計過程中主體和客體之間的關係
-
VB
學習內容:物件,按鈕,文字框
語言本質:理解人機互動的邏輯
解決問題:桌面應用開發
-
pyhon
學習內容: 程式設計邏輯,第三方庫
語言本質:理解問題求解
解決問題: 解決各種各樣問題的計算部分的實現
適用物件:各種專業
-
python語言的特點
Python是通用語言(用普適計算問題的開發),指令碼語言,開源語言,跨平臺語言,多模型語言
-
特點:
- 強制的可讀性
- 較少的底層語法元素
- 多種程式設計方式
- 支援中文字元
-
優勢
- 語法簡潔
- c程式碼量的10%,提高執行產出
- 13萬第三方庫,快速增長的計算機生態
- 使用其他人的功能模組,避免重複製造輪子
- 開發共享
- 跨作業系統平臺
-
如何看待Python語言
- C/C++: 設計python介面,用以呼叫C/C++設計的程式
- Java: 特定開發(Android)和崗位需求
- HTML/CSS/JS: 不可替代的前端技術,全棧能力
- 其他語言:R/Go/Matlab等,特定領域
-
程式語言的種類
- 機器語言:程式碼直接執行,與CPU型號有關
- 組合語言:有助記符,彙編器,與CPU型號有關
- 高階語言:接近自然語言,編譯器,與cpu型號無關
- 超級語言:粘性整合已有程式,具備龐大計算生態
2.2 例項2:Python蟒蛇繪製
使用IDLE的檔案方式編寫程式碼並儲存為PythonDraw.py檔案
#PythonDraw.py import turtle #引用了一個繪相簿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 模組1:turtle庫的使用
-
turtle庫概述
- turtle庫是turtle繪圖體系的Python實現
- python標準庫之一
-
turtle窗體佈局
turtle的一個畫布空間,最小單位是畫素
-
-
turtle的繪圖窗體:turtle.setup(width,height,startx,starty)
-
-
turtle空間座標體系
turtle.goto(x,y) #到空間座標所指位置
絕對座標:
-
- 以海龜座標為參照的座標系
- turtle(絕對)角度座標系
向左向右改變方向
- RGB色彩模式
- RGB指紅藍綠三個通道的顏色組合
- 覆蓋視力所感知的所有顏色
- RGB每色的取值範圍0-255整數或0-1小數
- turtle預設採用小數值,可以切換為整數值
2.4 turtle程式語法元素分析
1.庫引用與import
庫引用——擴充Python程式功能的方式
import的用法
-a.使用import保留字完成,採用<a>.<b>()編碼風格,這種方式不會出現函式重名問題
-b.使用from和import保留字共同完成:
from <庫名> import <函式名>
from <庫名> import *
呼叫方式: 直接使用函式名
-c 使用import 和 as 保留字共同完成:
import <庫名> as <庫別名>
<庫別名>.<函式名>(<函式引數>)
——即是給匯入庫取了個別名,可以關聯一個更短,更適合自己的名字
2.turtle畫筆控制函式
以蟒蛇例項程式,使用了這些畫筆程式:penup(),pendown(),pensize(),pencolor()將海龜想象成畫筆
畫筆操作後一直有效,一般成對出現。
——turtle.penup() 別名 turtle.pu() 表示將畫筆抬起
——turtle.pendown()別名 turtle.pd() 表示畫筆落下
——turtle.pensize(width) 別名 turtle.width(width) 設定畫筆寬度
——turtle.pencolor(color) color為顏色字元符或r,g,b值(RGB的小數值或者元組值)
3. turtle運動控制函式
在蟒蛇例項中 ,涉及了這些運動控制函式:fd(), circle()
——turtle.fd()函式
——turtle.circle(r,extent=None)
4.方向控制函式
4.迴圈語句與range()函式