您的位置:首页 > 编程语言 > Python开发

Python基础之函数

2017-03-15 18:31 169 查看
一、说明

  1、函数的作用:

    a.代码组织结构清晰,可读性强;

    b.遇到重复的功能只用写一个函数即可,其它调用即可;

    c.功能需要扩展时,修改功能函数即可。

二、函数的种类

  1、内置函数

    为了方便开发,针对一些简单的功能,Python解释器已经为我们定义好的函数即内置函数。如:max(),min(),len()....

  2、自定义函数

    由于内置函数提供的功能有限,我们需要自定义函数来实现某种功能,遇到相同场景调用函数即可。

三、定义函数

  1、语法    

def 函数名(参数1,参数2,参数3,...):
'''注释'''
函数体
return 返回的值

#函数名要能反映其意义


# 1、写函数,,用户传入修改的文件名,与要修改的内容,执行函数,完成批了修改操作
def modify_file(filename,old,new):
import os
with open(filename,'r',encoding='utf-8') as read_f,\
open('.bak.swap','w',encoding='utf-8') as write_f:
for line in read_f:
if old in line:
line=line.replace(old,new)
write_f.write(line)
os.remove(filename)
os.rename('.bak.swap',filename)
modify_file('/Users/jieli/PycharmProjects/爬虫/a.txt','alex','SB')
# 2、写函数,计算传入字符串中【数字】、【字母】、【空格] 以及 【其他】的个数
def check_str(msg):
res={
'num':0,
'string':0,
'space':0,
'other':0,
}
for s in msg:
if s.isdigit():
res['num']+=1
elif s.isalpha():
res['string']+=1
elif s.isspace():
res['space']+=1
else:
res['other']+=1
return res

res=check_str('hello name:aSB passowrd:alex3714')
print(res)

# 3、写函数,判断用户传入的对象(字符串、列表、元组)长度是否大于5。
# 略
# 4、写函数,检查传入列表的长度,如果大于2,那么仅保留前两个长度的内容,并将新内容返回给调用者。
def func1(seq):
if len(seq) > 2:
seq=seq[0:2]
return seq
print(func1([1,2,3,4]))
# 5、写函数,检查获取传入列表或元组对象的所有奇数位索引对应的元素,并将其作为新列表返回给调用者。
def func2(seq):
return seq[::2]
print(func2([1,2,3,4,5,6,7]))
# 6、写函数,检查字典的每一个value的长度,如果大于2,那么仅保留前两个长度的内容,并将新内容返回给调用者。
# dic = {"k1": "v1v1", "k2": [11,22,33,44]}
# PS:字典中的value只能是字符串或列表
def func3(dic):
d={}
for k,v in dic.items():
if len(v) > 2:
d[k]=v[0:2]
return d
print(func3({'k1':'abcdef','k2':[1,2,3,4],'k3':('a','b','c')}))


示例
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: