分享

python函数

 pythonjava学习 2021-04-06
当代码越写越长在时,全部放在一块儿会不太好看,也不好找想要的东西。同时,当一段代码需要重复使用时,复制粘贴也不太方便,可以用函数来解决这个问题。
1、函数的定义
python中,函数的声明和定义是一体的。其基本形式如下:
def 函数名(函数参数):
    函数体
    return 表达式或者值
注意:
(1)def其实就是 define定义一个函数。
(2)Python中的函数声明时不需要返回类型,由return来决定返回值是什么类型。
(3)函数体不是大括号包起来,而是缩进。
(4)函数的参数可以是一个,也可以是多个,同样,参数也不用指定类型。
(5)如果没有return,函数会自动返回None
例:求字符串中大、小写字母的个数。
可以定义函数来求字符串中字母的个数,主程序用来输入字符串。
函数定义如下所示:
def count_Aa(s):
    count=0
    for i in s:
        if i>='a' and i<='z':
            count+=1
        if i>='A' and i<='Z':
            count+=1
    print('字母个数有:',count,'')
说明:
(1)本函数是没有返回值的。
(2)本函数的参数只有一个,数据类型根据传入的类型决定。
(3)可以在主程序中无限次调用本函数。

        --------------------------代码太长,休息一会儿

        --------------------------这是广告开始的分割线

---------------------------这是广告结束的分割线

  ---------------------------------------接着,来......

2、函数的调用
函数定义了以后就可以调用了,但要注意的是:python没有前向引用。意思就是,函数的定义一定要在函数的调用之前。
同上例:求字符串中大、小写字母的个数。
可以在主程序中通过函数名直接调用函数,如下。
s=input("请输入字符串:")
count_Aa(s)
要调用函数时,需要传参数给函数,本函数只有一个参数,所以传了一个参数过去。
由于python是弱数据类型的,所以在传参的时候并不一定是只能传字符串类型,传其他的比如列表也可以。

3、参数的传递
函数调用的时候,有实参和形参的区别。
定义函数时的参数是形式参数,此时还没有实际的值,因此是形参。
当调用函数时,要具体地给函数参数,此时就是实参。
Python中参数传递采用的方式是值传递,绝大部分情况下,在函数内部直接修改形参的值不会改变实参的值,如下图所示:

s的值在函数中改变了之后,在主程序中再输出时是没有任何改变的。
如果需要在函数中改变了实参的值,在其他地方也要跟着改变的话,可以用如下方式:

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多