a衷蜓、溫度轉(zhuǎn)換程序?qū)嵗?/h1>
溫度刻畫存在不同體系:攝氏度惯豆、華氏度
步驟1:分析問題的計算部分:采用公式轉(zhuǎn)換方式解決計算問題
步驟2:確定功能 -- IPO
?????????????輸入:華氏或者攝氏溫度值昧辽、溫度標識
?????????????處理:溫度轉(zhuǎn)化算法
?????????????輸出:攝氏或者華氏溫度值、溫度標識
???????????????? F表示華氏度愉耙,82F表示華氏82度
???????????????? C表示攝氏度蔬蕊,28C表示攝氏28度
步驟3:設計算法
???根據(jù)華氏和攝氏溫度定義,轉(zhuǎn)換公式如下:
????????? C = ( F – 32 ) / 1.8
????????? F = C * 1.8 + 32
???其中奕枝,C表示攝氏溫度括眠,F(xiàn)表示華氏溫度
步驟4:編寫程序
步驟5:調(diào)試、運行程序
在系統(tǒng)命令行上運行如下命令執(zhí)行程序:
? C:\>pythonTempConvert.py
或者:使用IDLE打開上述文件倍权,按F5運行(推薦)
輸入數(shù)值掷豺,觀察輸出
b捞烟、Python語法元素分析
1.程序的格式框架
Python用4個空格或者一個Tab來作為一個縮進且Tab和空格不可混用。
2.注釋
第一種單行注釋当船,以#開頭即可题画。
第二種多行注釋,以'''開頭以'''結(jié)束德频。
3.命名與保留字
在Python語言中沒有特別設置常量苍息,統(tǒng)一都是變量。
不過我們通過把變量名大寫之后當成常量用壹置,實際上它還是一個變量竞思。
常量:程序中值不發(fā)生改變的元素
變量:程序中值發(fā)生改變或者可以發(fā)生改變的元素
4.字符串
字符串是用兩個雙引號“ ”或者單引號‘ ’括起來的一個或多個字符。
Python字符串的兩種序號體系
正向遞增序號:0~L-1
逆向遞減序號:-1~-L
Python字符串提供區(qū)間訪問方式钞护,格式:? [ N:M ]
????表示字符串中從N到M(不包含M)的子字符串
????N盖喷、M為索引序號
????可以混合使用正向遞增序號和反向遞減序號
例如:s1[0:-1]:第0個字符到最后一個字符之前的子串
操作符+可以實現(xiàn)兩個字符串的連接操作
區(qū)間訪問:從N到M(不包含M)的子字符串
5.表達式和賦值語句
單個賦值與同步賦值語句
例:將變量x和y交換
5.input()函數(shù)
以字符串類型返回結(jié)果
獲得用戶輸入之前,input()函數(shù)可以包含一些提示性文字
6.分支語句
分支語句是控制程序運行的一類重要語句难咕,它的作用是根據(jù)判斷條件選擇程序執(zhí)行路徑课梳。
7.eval()函數(shù)
neval(<字符串>)函數(shù)是Python語言中一個十分重要的函數(shù),它能夠以Python表達式的方式解析并執(zhí)行字符串余佃,將返回結(jié)果輸出暮刃。
注意:input輸入給變量的內(nèi)容是字符串
8.其他運算符
Python支持的算術運算符:+、-爆土、*椭懊、/、**
空格:
????????表達式內(nèi)部標記之間允許有空格步势,增加可讀性
????????不能改變縮進相關的空格數(shù)量
????????空格不能將命名分割
括號:表示分組和優(yōu)先級
9.輸出函數(shù)
print()函數(shù)可以以字符形式輸出變量灾搏。
????????可以輸出各種類型變量的值。
????????通過format()方法來選擇要輸出的變量立润。
????????用槽格式和format()方法將變量和字符串結(jié)合在一起輸出
實例:用戶輸入兩個數(shù)字狂窑,計算它們的平均數(shù),并輸出平均數(shù)
10.循環(huán)語句
第一種遍歷循環(huán):for
第二種無限循環(huán):while
11.函數(shù)
函數(shù)對一組表達特定功能表達式的封裝桑腮,能夠接收變量并輸出結(jié)果泉哈。
輔助代碼按照功能劃分模塊
有利于代碼之間進行語句級別的復用
第一種:內(nèi)置函數(shù)
系統(tǒng)自帶函數(shù),例如:input()破讨、print()丛晦、eval()
第二種:自定義函數(shù)
自己定義的函數(shù)
c、turtle庫和蟒蛇繪制程序
Python英文是蟒蛇的意思
通過下面的例子提陶,來實踐用Python語言輸出圖形效果烫沙。
首先:這個代碼沒有input輸入也沒有print輸出
其次:代碼絕大部分都是<a>.<b>()類型的函數(shù)運行(面向?qū)ο缶幊?OOP)
表示調(diào)用一個對象<a>的方法<b>(),或者調(diào)用一個函數(shù)庫<a>中的函數(shù)<b>()
import turtle
模塊
import是一個關鍵字隙笆,用來引入一些外部庫锌蓄,這里的含義是:引入一個名字叫turtle的函數(shù)庫
Python語言最重要的特點:通過使用函數(shù)庫并利用庫中函數(shù)進行編程 — 模塊編程
Turtle庫
Turtle庫是Python語言中一個很流行的繪制圖像的函數(shù)庫
使用turtle庫升筏,同學們頭腦里需要有這樣一個概念:
想象一個小海龜,在一個橫軸為x瘸爽、縱軸為y的坐標系原點(0,0)位置開始
它根據(jù)一組函數(shù)指令的控制您访,在這個平面坐標系中移動,從而在它爬行的路徑上繪制了圖形(前進方向剪决、后退方向灵汪、左側(cè)方向、右側(cè)方向)
d柑潦、Python蟒蛇程序分析
Turtle中的turtle.setup()函數(shù)用于啟動一個圖形窗口享言,它有四個參數(shù)
?turtle.setup(width, height, startx, starty)
width, height:啟動窗口的寬度和高度
startx, starty:表示窗口啟動時,窗口左上角在屏幕中的坐標位置渗鬼。若取值None览露,則窗口位于屏幕水平/垂直中央。
我們所使用的顯示屏幕也是一個坐標系乍钻,該坐標系以左上角為原點肛循,向右和向下分別是x軸和y軸铭腕。
turtle.setup(650, 350, 200, 200)
蟒蛇程序代碼啟動一個650像素寬银择、350像素高的窗口。
turtle.penup()抬起畫筆累舷,之后移動畫筆不繪制圖形
turtle.pendown()落下畫筆浩考,之后移動畫筆將繪制圖形
Turtle中的turtle.pensize(width)函數(shù)表示小海龜運動軌跡的寬度。
它包含一個輸入?yún)?shù)被盈,這里我們把它設為25析孽。
Turtle中的turtle.pencolor(顏色參數(shù))函數(shù)表示小海龜運動軌跡的顏色。
nturtle.seth(angle)函數(shù)表示小海龜啟動時運動的方向只怎。它包含一個輸入?yún)?shù)袜瞬,是角度值。
其中:0度--向東身堡,90度--向北邓尤,180度--向西,270度--向南贴谎;負值表示相反方向汞扎。
程序中,turtle.seth(-40)擅这,我們讓小海龜向-40度啟動爬行澈魄,即:向東南方向40度。
turtle.circle(rad仲翎,angle)函數(shù)讓小海龜沿著一個圓形爬行
參數(shù)rad描述圓形軌跡半徑的位置
如果為正值痹扇,這個半徑在小海龜運行的左側(cè)铛漓;
如果rad為負值,則半徑在小海龜運行的右側(cè)帘营。
參數(shù)angle表示小海龜沿著圓形爬行的弧度值如果不設置參數(shù)或者None票渠,則繪制整個圓形。
turtle.fd(distance)函數(shù)也可以表示為turtle.forward(distance) 芬迄。
表示小海龜向前直線爬行移動问顷,它有一個參數(shù)表示爬行的距離distance。
e禀梳、函數(shù)的封裝
蟒蛇程序功能可以分成兩類:
繪制圖形前對畫筆的設置杜窄,包括顏色、尺寸算途、初始位置等
繪制Python蟒蛇的功能塞耕。由于蟒蛇繪制的功能相對獨立,可以用函數(shù)來封裝嘴瓤。
def定義函數(shù)
函數(shù)是一組代碼的集合扫外,用于表達一個功能,或者說廓脆,函數(shù)表示一組代碼的歸屬筛谚,函數(shù)名稱是這段代碼的名字。
def語句定義的函數(shù)所包含語句與def行存在縮進關系停忿,def后連續(xù)的縮進語句都是這個函數(shù)的一部分驾讲。
def所定義的函數(shù)在程序中未經(jīng)調(diào)用不能直接執(zhí)行,需要通過函數(shù)名調(diào)用才能夠執(zhí)行席赂。
f吮铭、函數(shù)的引用
Python的函數(shù)庫
Python語言的魅力在于大量使用外部函數(shù)庫
包含在安裝包中的函數(shù)庫:math, random, turtle等
其他函數(shù)庫:用戶根據(jù)需求安裝
Python對函數(shù)庫引用的方式
第一種方式:
import <庫名>
如果需要用到函數(shù)庫中函數(shù),需要使用:
<庫名>.<函數(shù)名>
第二種方式:
from <庫名> import <函數(shù)名>
from <庫名> import *
調(diào)用函數(shù)不需要<庫名>颅停,直接使用<函數(shù)名>
兩種引用方式的區(qū)別
這兩種引用方式對程序運行沒有區(qū)別谓晌,需要注意:
如果采用第一種方式,用戶自定義的函數(shù)名字可以和庫中函數(shù)的名字一樣癞揉,例如纸肉,程序中可以定義自己的fd()函數(shù)。(推薦初學者使用)
如果采用第二種方式烧董,用戶程序中不能用函數(shù)庫中的名字定義函數(shù)毁靶,例如:程序不能定義新的fd()函數(shù),因為庫turtle中的fd()函數(shù)是直接通過fd()調(diào)用逊移。