3.1 縮進(jìn)
a = 103
if a > 100:
print("a is bigger than 100.")
print("a line means nothing")
else:
pass
print("a is a int.")
pass是占位語(yǔ)句力喷,else:之后必須有下層代碼厌衔,所以使用pass語(yǔ)句可以保持代碼形式上的完整性疲吸。pass語(yǔ)句不執(zhí)行任何操作
- 縮進(jìn)快捷鍵
ctrl+[ ——左縮進(jìn) ctrl+]——右縮進(jìn)
3.2 操作符/運(yùn)算符
3.2.1 復(fù)合運(yùn)算符
+=灶挟、-=坏逢、*=赃承、/=
a = 3
a = a + 2
print("a =", a)
b = 3
b += 2
print("b =", b)
運(yùn)行結(jié)果
a=5
b=5
b +=2——b = b+2
3.2.2 整除與求模
a = 10
b = a // 3
print("b=", b, type(b))
c = a % 3 # 求模 取余
print("c=", c)
運(yùn)行結(jié)果
b= 3 <class 'int'>
c= 1
// 為整除操作符-operator妙黍,其結(jié)果將忽略小數(shù)部分,返回一個(gè)整數(shù)
% 為求模操作符瞧剖,所謂求模拭嫁,就是求整除操作的余數(shù)
3.2.3 比較與邏輯
a = 10
print("a > 5:", a > 5)
print("a < 20 and a >= 10:", a < 20 and a >= 10)
print("a != 3:", a != 3)
print("a > 100 or a < 20:", a > 100 or a < 20)
print("not a >= 10:", not a >= 10)
運(yùn)行結(jié)果
a > 5: True
a < 20 and a >= 10: True
a != 3: True
a > 100 or a < 20: True
not a >= 10: False
比較運(yùn)算符返回布爾類型值:true、false
!=是==操作符的反操作符抓于,當(dāng)左右不相等時(shí)返回真做粤,相等則返回假;
and, or, not表示邏輯運(yùn)算中的與捉撮,或怕品,非
3.3 數(shù)值運(yùn)算及其優(yōu)先級(jí)
- 先乘除后加減
- ()改變優(yōu)先級(jí)
- **表示求冪,**優(yōu)先級(jí)高于*(一般加括號(hào))
n = 3 + 2 * 6 / 3
print(n)
n = (3 + 2) * 6 / 3
print(n)
n = 2 + 3 * 2 ** 2
print(n)
n = 2 + 3 * (2 ** 2)
print(n)
運(yùn)行結(jié)果
7.0
10.0
14
14
3.4 函數(shù)及函數(shù)的定義
pow(a,b)巾遭,求a的b次方肉康,等價(jià)于a**b
abs(a),求a的絕對(duì)值
round(a)灼舍,返回參數(shù)的四舍五入結(jié)果
n1 = pow(2, 8)
n2 = abs(-10)
n3 = round(7 / 2)
n4 = round(6.5)
print("2^8=", n1)
print("-10的絕對(duì)值=", n2)
print("7/2≈", n3)
print(n4)
運(yùn)行結(jié)果
2^8= 256
-10的絕對(duì)值= 10
7/2≈ 4
7
自定義函數(shù)的語(yǔ)法形式
def <函數(shù)名>(<形參>):
<函數(shù)體>
return <返回值列表>
自定義函數(shù)求電費(fèi)
# 電費(fèi)計(jì)算:(期末讀數(shù) - 期初讀數(shù))*單價(jià)
def costCompute(iStart, iEnd):
iConsume = iEnd - iStart
return iConsume * 0.85
a = int(input("請(qǐng)輸入期末讀數(shù):"))
b = int(input("請(qǐng)輸入期初讀數(shù):"))
fElecFee1 = costCompute(1201, 1786)
fElecFee2 = costCompute(1322, 1423)
fElecFee3 = costCompute(b, a)
print("Electronic Power Cost of Mr Zhang:", fElecFee1)
print("Electronic Power Cost of Mr Lee: ", fElecFee2)
print("Electronic Power Cost of me: ", fElecFee3)
3.5 模塊及烏龜畫圖
import math導(dǎo)入了整個(gè)math模塊迎罗,導(dǎo)入后就可以通過(guò)"math."使用模塊的內(nèi)部函數(shù)或變量;
import math
from math import sqrt
print(math.floor(67.7)) # 67.7的下取整為67
print(math.ceil(67.1)) # 67.1的上取整為68
print(math.sqrt(9))
print(sqrt(16))
運(yùn)行結(jié)果
67
68
3.0
4.0
- sqrt()函數(shù)求參數(shù)的平方根;
- floor()函數(shù)返回參數(shù)的下取整片仿;
- ceil()函數(shù)返回參數(shù)的上取整
用turtle模塊畫圖
import turtle
t = turtle.Pen() # 創(chuàng)建一支畫筆
iCirclesCount = 30
for x in range(iCirclesCount): # 循環(huán)30次
t.circle(100) # 畫一個(gè)直徑為100的圓
t.left(360 / iCirclesCount) # 向左轉(zhuǎn) 360 / 30 = 12度
3.6 獲取用戶輸入
- 用input()函數(shù)獲取操作者的輸入
- input()函數(shù)返回的是字符串
sName = input("What's your name: ") # 用戶輸入姓名并按下Enter后程序才會(huì)繼續(xù)執(zhí)行
iAge = input("How old are you ? ")
iAge = int(iAge)
print("Hi,", sName, "You are ", iAge, "years old.")
運(yùn)行結(jié)果
What's your name: >? 柏力源
How old are you ? >? 22
Hi, 柏力源 You are 22 years old.
3.7 占位符
- 格式:“%s 好好學(xué)習(xí),天天向上 %d個(gè)尤辱,%.1f收費(fèi)的方式” %(a,b,c)
%d指一個(gè)十進(jìn)制格式的整數(shù)
%.2f指一個(gè)保留兩位小數(shù)的浮點(diǎn)數(shù)
%s為一個(gè)字符串
sName = "Mary"
fPrice = 125.75
n = 5
sText = "%s has %d lambs,each lamb worth $%.2f.So, these lambs worth $%.1f in total." % (sName, n, fPrice, fPrice * n)
print(sText)
運(yùn)行結(jié)果
Mary has 5 lambs,each lamb worth $125.75.So, these lambs worth $628.8 in total.
3.8 進(jìn)制
- 0x表示十六進(jìn)制砂豌,0b表示二進(jìn)制
- hex()函數(shù)將數(shù)字轉(zhuǎn)換成16進(jìn)制的字符串厢岂;
oct()函數(shù)將數(shù)字轉(zhuǎn)換成8進(jìn)制的字符串;
bin()函數(shù)將數(shù)字轉(zhuǎn)換成2進(jìn)制的字符串阳距; - %x占位符將數(shù)字以16進(jìn)制表示
a = 0xff
b = 0b0111
print("0xff = ", a, ",", "0b0111=", b)
print(a, "=", hex(a), ",", b, "=", bin(b))
print("%x" % (255))
運(yùn)行結(jié)果
0xff = 255 , 0b0111= 7
255 = 0xff , 7 = 0b111
ff