python介面自動化學習之函式三

2021-10-08 07:51:59 字數 2345 閱讀 2848

**可復用、可讀性強

def add(a,b):

return a+b

print(add(2,3))#a指向2,b指向3

print(add(a=3,b=2))#a指向3,b指向2

print(add(b=3,a=2)) #a指向2,b指向3

函式中可以定義預設引數,但是預設引數要放在後面,非預設引數要放到前面。

使用函式時,預設引數可以不傳。

def open_file(filename,filepath='d:/data'):

pass

open_file(filename='test.txt')

def f1(*args,**kwargs):

print(args,kwargs)

#args是元組,kwargs是字典

f1([1,2,3])

f1('a')

f1(name="wuya")

執行結果

([1, 2, 3],) {}

('a',) {}

()

1,函式可以當做乙個變數

2,函式的引數也可以是函式

3,函式是可以巢狀的

def login(usrename='wuya',password='admin'):

if usrename=='wuya' and password=='admin':

return '123456'

else:

return '登陸賬號錯誤'

def profile(token):

if token=='123456':

return '歡迎你訪問無涯個人主頁'

else:

return '請登入到系統'

print(profile(login()))

全域性作用域:針對全域性變數,定義在函式外的變數擁有全域性作用域,全域性變數可以在整個程式範圍內訪問。

區域性作用域:針對區域性變數,定義在函式內部的變數擁有乙個區域性作用域,區域性變數只能在其被宣告的函式內部訪問。

函式呼叫時,先訪問函式內的變數,再向上訪問函式外的變數。

name='wuya'

def f1():

name='網易'

print(name)

f1()

def f3():

print(name)

f3()

def f():

name='我是父函式'

def f1():

name='我是子函式'

print(name)

return f1()

f()

lambda 函式可以接收任意多個引數 (包括可選引數) 並且返回單個表示式的值。

lambda匿名函式的格式:冒號前是引數,可以有多個,用逗號隔開,冒號右邊的為表示式。

per=lambda a,b:a+b

print(per(2,3))

login=lambda username,password:print("登陸成功") if username=='wuya' and password=='admin' else print("登陸失敗")

login('wuya','admin')

#對字典進行排序

data=lambda **kwargs:dict(sorted(kwargs.items(),key=lambda item:item[0]))

print(data(name='wuya',age=18))

#對list1列表中的每個元素加1操作

list1=[100,101,102,103]

def f1():

list2=

for i in list1:

i+=1

print(list2)

f1()

#使用map函式

def f(a):

return a+1

print(list(map(f,list1)))

#更加簡化版

print(list(map(lambda x:x+1,list1)))

內部函式filter

list1=[1,2,3,4,5]

def f():

list2=

for i in list1:

if i>1:

print(list2)

f()print(list(filter(lambda x:x>1,list1)))

python介面自動化學習七之反射詳解

反射 通過字串去操作物件的屬性和方法,是字串形式.可進行反射操作的物件 例項化物件 類 其他模組 本模組 getattr 根據字串的形式去物件中尋找東西 hasattr 根據字串的形式去某個物件中判斷東西是否存在 setattr 根據字串的形式去某個物件中設定東西 delattr 根據字串的形式去某...

python介面自動化學習之路(4)

1.迴圈讀取excel裡的case 2.將響應結果寫入乙個新的excel 需要引入xlwt import requests import xlrd import json import xlutils import xlwt import time excelfile r users documen...

python介面自動化學習五之函式案例實戰

usr bin env python coding utf 8 author liulingling 要求 實現註冊功能,登陸成功後 返回暱稱 def inout username input 請輸入賬號 password input 請輸入密碼 return username,password d...