函数

某一个功能定义一个函数,就可以随时调取这个函数

用def来定义

def hello():#hello就是变量
    print('hello')#缩进的就是函数体

#函数不调用就不会被执行

函数名+() 就是被调用

#用函数写文件

先定义一个函数,传形参

用写的 方法写入(固定形式)

调用这个方法

def witer(name,content):#形参,等于变量名称
    with open (name,'w',encoding='utf-8')as f:
        f.write(content)
witer('函数','学习资料')#实参

 

 读文件:

def read(name):
    with open (name,'r',encoding='utf-8')as f:
        content = f.read()
        print(content)
read('函数')

 #函数的返回值

def read(name):
    with open (name,'r',encoding='utf-8')as f:
        content = f.read()
        return content#返回
result = read('函数')
print(result)

# return:用在函数里面没有返回值为None

1.返回的数据

2、函数只要遇到return函数立马执行结束,return 必须写在函数里面

def t():
    for i in range(5):
        print('ww')
        return 
t()

 小练习:

判断是否为小数,返回True ,False


def sx (s):#传参
s = str(s)#转化字符串
if s.count('.') == 1:#小数点的次数出现一次
left,right =s.split('.')#将小数点进行分割
if right.isdigit() and left.isdigit():#判断是不是为整数
if int (left)!=0 or int (right) !=0:#判断是不是为0.0
return True
if left.startswith ('-') and left.count('-') ==1:#判断负号是否出现1次
num = left[1:]#取负号后面第一位一直到结束
if num.isdigit() and right.isdigit():#判断是否为整数
if int (num)!=0 or int (right)!=0:#判断是封为0
return True
return False


print(is_float(-6.12))
print(is_float(1.12))
print(is_float(1))
print(is_float('sss.0001'))
print(is_float('sss.ssss'))
print(is_float(-1.23))
print(is_float('0.0'))
print(is_float('-0.0'))
 

函数的参数:

def b(name ,age):#必填参数,位置参数

  pass

def op_file(file,content=None)#默认参数

def op_file(file,content=None):
    print(file)
    print(content)
op_file('user.txt','ust')

默认值参数在调用函数时,如果传了参数值,则使用参数值,如果未传参数值,则用默认的参数值
def op_file(file,content =None):
    with open(file,'a+',encoding='utf-8')as f:
        if content:
            f.write(str(content))
        else:
            f.seek()
            result = f.read()
            return result

可变参数:一般写成(*args)

def send_sms(*phone):
    print(phone)
send_sms(1,52)
#可变参数:
#*
#1.参数是不是必须传  --不是
#2.限制不限制参数的个数  --不显示
#3.phone是什么 --元组

关键字参数:

必须制定关键则,参数放到字典

def  t(**info)

def t(**info):
    print(info)
t(age = 2)

 返回为字典

#四种连用
def test(name,content=None,*args,**kwargs)#必填参数放在最前面,默认参数,可变参数,关键字参数 必须按照这个顺序

按照关键字传参

def test(name, age ,qq,sex):
    print(name)
    print(age)
    print(qq)
    print(sex)
test(age=13,name='xiaohong',qq=3232323,sex = '')
#test('xiaohong',11,343434,'女')
#test('xiaohong',11,qq=343434,sex='女')
三种方式都可以用

原文地址:https://www.cnblogs.com/xxxxyanyan/p/12901814.html