七段數碼管day4

今日學習總結:python

1、程序分支控制ide

 1.單分支結構函數

if True:                                #這是一個布爾值
    print("條件成立")
if 1:                                   #這是一個布爾值
    print("條件成立")
if -1:                                  #這是一個布爾值
    print("條件成立")

 

 

 2.二分支結構:if  else 語句工具

guess = eval(input('請輸入你猜的年齡'))   
if guess == 99:
    print('猜對了')
else:
    print('猜錯了')
print('猜對了' if guess == 99 else '猜錯了')   #if else語句合併寫
 

.oop

 

 

 3.多支結構學習

score = input("請輸入你的分數:").strip()
score = float(score)
if score >=90:
    print("等級是A")
elif score >=80:
    print("等級是B")
elif score >=70:
    print("等級是C")
else:
    print("等級是D")

 

 

 

4.異常處理結構:try  exceptspa

num = eval(input('請輸入一個整數'))
print(num**2)

 

 

 用try  except 來去除錯誤3d

try:
    num = eval(input('請輸入一個整數'))
    print(num**2)
except:
    print('輸入的不是整數')

 

 

 

 2、案例:國內身體質量指標數BMIcode

         公式:bmi=體重/身高^2orm

       

#hight,weight = eval(input('請輸入您的身高/米 體重/kg'))

hight
= eval(input('請輸入您的身高/米:')) weight = eval(input('請輸入您的體重/kg:')) bmi = weight/pow(hight, 2) print('BMI 數值爲:{:.2f}'.format(bmi)) if bmi<18.5: print('BMI國內指標爲:偏瘦') elif bmi <24: print('BMI國內指標爲:正常') elif 24 <= bmi <28: print('BMI國內指標爲:偏胖') else: print('BMI國內指標爲:肥胖')

 

 

 3、程序的循環結構

1.遍歷循環結構:

  01.整數遍歷循環: for  i in range  結構的遍歷循環,是指從遍歷結構中逐一提取元素

for i in range(5):         #for  in 遍歷結構
    print(i)
    print('hello',i)

for i in range(1,6):       #for  in 遍歷結構,遍歷1,2,3,4,5  由於不顧尾。
    print(i)
    print('hello', i)
for i in range(1,6,2): #for in 遍歷結構,2表示是步長
print('hello',i)

 

 

02. 字符串遍歷循環:for c in  遍歷字符串的每一個字符,產生循環

s = "python"
for c in s:
    print(c,end=',')     #end=''   是去掉print自帶的換行
或者
for c in ('python'):
print(c,end=',')

 

 

 

03.列表遍歷循環:for  item  in ls    ls是一個列表,遍歷其裏面的每一個元素,產生循環

abc=0
ls = [123,'python',456,'你好',abc]   
for item in ls:
    print(item,end=',')

 

 

 2.循環語句

01.無限循環,是指有條件控制的。若是條件無限,則循環無限。while語句。

a=3
while a>0:
    a=a-1
    print(a)
輸出結果:
2
1
0


a=3                 
while a>0:       
    a=a+1
    print(a)
#出現死循環,由於條件永遠成立

02.循環控制的break 語句  :跳出並結束當前整個循環 和 continue語句   :結束當初循環,繼續執行後續次數循環

 

與for 循環連用

for c in "prthon":
    if c=='t':
        break

    print(c,end=",")
    
 輸出結果:p,r,

for c in "prthon":
    if c=='t':
        continue
    print(c,end=",")

 輸出結果:p,r,h,o,n,

 與while 循環連用

s = 'python'
while s !="":
    for c in s:
        print(c,end='')
    s=s[:-1]                      #由於[:-1]不顧尾,因此s字符串的長度在不斷減小

#輸出結果爲:p,y,t,h,o,n,p,y,t,h,o,p,y,t,h,p,y,t,p,y,p,


s = 'python'
while s !="":
    for c in s:
        if c =='t':
            break #break結束的是離它最近的for循環 結束的不是while循環。if是條件語句 
        print(c,end='')
    s=s[:-1]


輸出結果爲:p,y,p,y,p,y,p,y,p,y,p,

 

4、函數:一系列功能的集合體,相似於工具。

1.無參數函數

def index():
    print("你好")
index()

2.有參數函數

usename = "sean"
password = "123"


def login(usename, password):
    name = input("請輸入您的名字:")
    pwd = input("請輸入您的密碼:")
    if name == usename and pwd == password:
        print('登陸成功')
    else:
        print('登陸s失敗')


login(usename, password)

3.空函數

def login():           登陸
    pass

def register():        註冊
    pass

def check_balance():   查看銀行帳戶
    pass

def check_user():      查看用戶
    pass

def logout():          登出
    pass

 

5、七段數碼管繪製

       函數的調用和嵌套的使用

import turtle
import time
t = turtle.Pen()
def drawGap():
    t.up()
    t.fd(5)

def drawLine(flag):
    drawGap()
    if flag:
        t.down()
    else:
        t.up()
    t.fd(40)
    drawGap()
    t.right(90)

def drawDight(num):
    drawLine(True) if num in [2, 3, 4, 5, 6, 8, 9] else drawLine(False)
    drawLine(True) if num in [0, 1, 3, 4, 5, 6, 7, 8, 9] else drawLine(False)
    drawLine(True) if num in [0, 2, 3, 5, 6, 8, 9] else drawLine(False)
    drawLine(True) if num in [0, 2, 6, 8] else drawLine(False)
    t.left(90)
    drawLine(True) if num in [0, 4, 5, 6, 8, 9] else drawLine(False)
    drawLine(True) if num in [0, 2, 3, 5, 6, 7, 8, 9] else drawLine(False)
    drawLine(True) if num in [0, 1, 2, 3, 4, 7, 8, 9] else drawLine(False)
    t.up()
    t.left(180)
    t.fd(20)

def get_data(data):
     for i in data:
         if i=="/":
            t.write('', font=("Arial", 20, "normal"))
         elif i=="-":
              t.write('', font=("Arial", 20, "normal"))
              t.up()
              t.fd(40)
              t.down()
         elif i=="+":
              t.write('', font=("Arial", 20, "normal"))
         else:
              drawDight(eval(i))

def mian():
    t.up()
    t.backward(300)
    t.down()
    t.pencolor('red')
    t.pensize(5)
    get_data(time.strftime('%Y/%m-%d+', time.gmtime()))
    t.hideturtle()
    t.up()
    t.fd(-500)
    t.left(90)
    t.fd(110)
    t.right(90)
    t.pencolor('blue')
    t.write('sean老師真帥', font=("Arial", 50, "normal"))

mian()
turtle.mainloop()

相關文章
相關標籤/搜索