天天看點

python定義函數傳回值_PYTHON-函數的定義與調用,傳回值,和參數-練習

# day10函數的定義調用和參數作業

# 1、寫函數,使用者傳入修改的檔案名、與要修改的内容,執行函數,完成批量修改操作

# def modify_file(filename,old,new):

# import os

# with open(filename,mode='rt',encoding='utf-8') as read_f,\

# open('.db.txt.swap',mode='wt',encoding='utf-8') as wrife_f:

# for line in read_f:

# wrife_f.write(line.replace(old,new))

# os.remove(filename)

# os.rename('.db.txt.swap',filename)

#

# modify_file('db.txt','sb','kevin')

# 2、寫函數,計算傳入字元串中【數字】、【字母】、【空格] 以及 【其他】的個數

# def check_list(msg):

# res={

# 'num':0,

# 'string':0,

# 'space':0,

# 'others':0

# }

# for line in msg:

# if line.isdigit():

# res['num'] += 1

# elif line.isalpha():

# res['string'] += 1

# elif line.isspace():

# res['space'] += 1

# else:

# res['others'] += 1

# return res

#

# res=check_list('hello12 342: 1213')

# print(res)

# 3、寫函數,判斷使用者傳入的對象(字元串、清單、元組)長度是否大于5。

# def check_list(msg):

# if len(msg)>5:

# print('是')

# else:

# print('否')

# msg=check_list((1,2,[1,2,4,5,5,6]))

# 4、寫函數,檢查傳入清單的長度,如果大于2,那麼僅保留前兩個長度的内容,并将新内容傳回給調用者。

# def check_list(msg):

# if len(msg)>2:

# msg= msg[0:2]

# return(msg)

# print(check_list([1,2,3,4,5]))

# 5、寫函數,檢查擷取傳入清單或元組對象的所有奇數位索引對應的元素,并将其作為新清單傳回給調用者。

# def check_list(msg):

# return msg[::2]

# print(check_list([1,2,3,4,5,6,7]))

# 6、寫函數,檢查字典的每一個value的長度,如果大于2,那麼僅保留前兩個長度的内容,并将新内容傳回給調用者。

# dic = {"k1": "v1v1", "k2": [11,22,33,44]}

# PS:字典中的value隻能是字元串或清單

# def check_list(dic):

# for k,v in dic.items():

# if len(v)>2:

# dic[k]=v[0:2]

# return dic

# print(check_list({'k1':'abcdef','k2':[1,2,3,4],'k3':('a','b','c')}))