python (六)函数

一、函数的形成

  需求1:来测试一下‘hello word’ 的长度

# 在没有函数的时候,我们可以用for循环实现
s1 = "hello world"
length = 0
for i in s1:
    length = length+1
print(length)

  再增加一个需求2:再来测试一下另外一个字符串的长度:‘hello china’

  然后需求1和需求2的代码就变成下边这样

s1 = "hello world"
length = 0
for i in s1:
    length = length+1
print(length)


s2 = "hello china"
length = 0
for i in s2:
    length = length+1
print(length)

上边的代码确实可以实现需求,但是有缺点:代码重复,可读性差。 我们将上面的代码称之为面向过程的方式

为了解决这种问题就出现了函数

函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段

二、函数的格式和调用

def mylen():  # 定义一个函数mylen
'''计算s1的长度''' s1
= "hello world" length = 0 for i in s1: length = length+1 print(length) mylen() # 函数调用
def 关键词开头,空格之后接函数名称和圆括号(),最后还有一个":"。

def 是固定的,不能变,他就是定义函数的关键字。

空格 为了将def关键字和函数名分开,必须空(四声)

函数名:函数名只能包含字符串、下划线和数字且不能以数字开头。虽然函数名可以随便起,但我们给函数起名字还是要尽量简短,并能表达函数功能

括号:是必须加的

注释:每一个函数都应该对功能和参数进行相应的说明,应该写在函数下面第一行。以增强代码的可读性。

调用:就是 函数名()

二、函数的返回值

1、什么是函数的返回值

在使用内置函数len()方法时,得到的结果会赋值给一个变量,然后得到结果:

str_len = len('hello,world')
print(str_len)

但是自己写的这个函数mylen(),并不会得到这样的结果,如何让他和len函数一样,有返回值呢?

那就是在函数的最后加上一个return,return 后面写你需要的返回值就可以了。

#函数定义
def mylen():
    """计算s1的长度"""
    s1 = "hello world"
    length = 0
    for i in s1:
        length = length+1
    return length

#函数调用
str_len = mylen()
print('str_len : %s'%str_len)

return返回值

2、return关键字的作用

  1、函数中遇到return终止函数。
  2、返回值 返回给了函数的调用者

3、return返回值的的三种情况

第一种:没有返回值  返回None

def mylen():
    s1 = "hello world"
    length = 0
    for i in s1:
        length = length+1
str_len = mylen()
print(str_len)  # 因为没有返回值,此时的str_len为None

第二种:单个值  返回单个值

第三种:多个值  返回一个由这多个值组成的元组

猜你喜欢

转载自www.cnblogs.com/caoyinshan/p/10086580.html