iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 29
0

今天回來繼續學習!
上次複習到def function,今天接續下去,講解更深入。

#函數預設資料

def say(msg='hello'):
    print(msg)

say('hello function')
say()  #沒放入新的資料,因此使用default值

#指定參數名稱
def divide(n1,n2):
    result = n1/n2
    print(result)

divide(2,4)

divide(n2=2,n1=4) #不按順序,直接指定參數名稱

#無限長度(不限定長度)參數
def say(*msgs):
    #無限參數以tuple資料型態處理
    for msg in msgs:
        print(msg)

say('hello','fuck','gg','dame') #不管多長都吃得下

#EX:次方
def power(base,exp=0):
    print(base**exp)

power(3,2)
power(4) #exp 不指定 -> 使用預設值

#EX2:算平均數
def avg(*ns):
    sum = 0
    for n in ns:
        sum = sum + n
    print(sum/len(ns))

avg(3,4)
avg(13,43,23,53,2)

接下來講解module:

#模組:module, 一個獨立的程式檔案, 將程式寫在一個檔案中,可以重複使用.
#先載入模組,在使用模組中函式

#載入
#import
#import ... as ...

#使用
#模組名稱.函式名稱(參數資料)
#模組名稱.變數名稱

#sys模組: 取得系統相關資訊
import sys

#print(sys.platform) #作業系統
#print(sys.maxsize)  #整數型態最大值
#print(sys.path)     #搜尋模組路徑

#自訂模組教學:建立幾何運算模組(geometry.py),再使用module.py使用!
import geometry
result=geometry.distance(1,5,1,5)
print(result)

result = geometry.slope(1,5,2,6)
print(result)

#如果模組不跟主程式放在同一資料夾會不能import
#解決方法:
#sys.path.append('資料夾名稱') #在模組的搜尋路徑列表中新增路徑

geometry.py 寫成另一個檔案:

#自定義模組
def distance(x1,x2,y1,y2):
    return ((x2-x1)**2+(y2-y1)**2)**0.5  

def slope(x1,x2,y1,y2):
    return (y2-y1)/(x2-x1)  

以上為今天複習內容!


上一篇
CNN - Architectures
下一篇
完賽啦! Python basic 4
系列文
初心者的自我挑戰30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言