python----函数的简单用法

本文介绍了Python中的函数概念,强调了函数作为代码模块的复用性和效率提升。定义函数的关键字是`def`,函数名应表达其功能并遵循标识符命名规则。函数的使用包括定义和调用两步,调用时执行函数内的代码。此外,还提到了函数包的调用和局部变量的概念。
摘要由CSDN通过智能技术生成

return 表示返回,后续代码不执行

def sum_2_num(num1,num2):
    result = num1 + num2
    return result
 # 不执行下面两行代码
    num = 2345
    print num
sum_result = sum_2_num(3,7)
print sum_result

这里写图片描述

若将return注释
def sum_2_num(num1,num2):
    # result = num1 + num2
    # return result
    num = 2345
    print num
sum_result = sum_2_num(3,7)
print sum_result

None表示无返回值

这里写图片描述

函数

所谓函数,就是把具有独立功能的代码块组织成为一个小模块,在需要的时候调用
函数的使用包含两个步骤
1. 定义函数–封装独立的功能
2. 调用函数–享受封装的成果
函数的作用: 在开发时,使用函数可以提高编写的效率以及代码的重用‘’
函数:
函数是带名字的代码块,用于完成具体的工作
需要在程序中多次执行同一项任务时,你无需反复编写完成该任务的代码,而只需调用该

务的函数,让 python 运行其中的代码,你将发现,通过使用函数,程序编写,阅读,测试

修复都将更容易

1. 定义函数

def 函数名 ():
函数封装的代码
1.def 是英文 define 的缩写
2. 函数名称应该能够表达函数封装代码的功能,方便后续的调用
3. 函数名称的命名应该符合标识符的命名规则
可由字母,下划线和数字组成
不能以数字开头
不能与关键字重名

# 定义一个函数,打印一行50个*


def print_line():
    print '*'*50
print_line()

这里写图片描述

# 定义一个函数,打印一行50个任意字符


def print_line(char):
    print char*50
print_line('%')

这里写图片描述

# 定义一个函数,打印一行任意个任意字符


def print_line(char,times):
    print char*times
print_line('¥',30)

这里写图片描述

# (写函数说明,鼠标点在函数名上,会出现小灯泡,选insert documentation string stub)
def print_line(char,times):
    print char * times
def print_lines(char,times):
    """
     打印多行分割符
    :param char: 要打印的分割符
    :param times: 要打印的行数
    """
    row = 0
    while row < 5:
        print_line(char,times)
        row += 1

print_lines('%',4)

这里写图片描述

参数的作用
函数,把具有独立功能的代码块组织成为一个小模块,在需要的时候调用
函数的参数,增加函数的通用性,针对相同的数据处理逻辑,能够适应更多的数据
        1.在函数内部,把参数当作变量使用,进行需要的数据处理
        2.函数调用时,按照函数定义的参数顺序,把希望在函数内部处理的数据,通过
参数传递


形参和实参
形参:定义函数时,小括号中的参数,是用来接收参数用的,在函数内部作为变量使用
实参:调用函数时,小括号中的参数,是用来把数据传递到函数内部用的

函数的返回值
在程序开发中,有时候,会希望一个函数执行结束后(举例子:温度计函数,要返回给我>们当前的温度),告诉调用者一个结果,以便调用者针对具体的结果作出后续的处理
返回值是函数完成工作后,最后给调用者的一个结果
在函数中使用return关键字可以返回结果
调用函数一方,可以使用变量来接收函数的返回结果

函数包的调用




被导入的包

def print_line(char,times):
    print char * times
def print_lines(char,times):
    """
     打印多行分割符
    :param char: 要打印的分割符
    :param times: 要打印的行数
    """
    row = 0
    while row < 5:
        print_line(char,times)
        row += 1




(python2.7不支持中文文件名的导入)

这里写图片描述

导入
# _*_ coding:utf-8 _*_

模块文件:每一个python源文件都可以是一个模块文件
可以在一个python文件中定义函数或者变量
然后在另一个文件中使用 import filename 导入这个模块
导入之后,就可以使用 模块名.变量/模块名.函数的方式
使用这个模块中定义的函数和变量

import func_4
func_4.print_line('$',30)
func_4.print_lines('@',30)


(按住ctrl键,点被调用的函数名,会进入被调用的函数的源文件)

这里写图片描述

局部变量和全局变量
局部变量是在函数内部定义的变量,只能在函数内部使用
全局变量是在函数外部定义的变量,(没有定义在某一个函数内),所有函数内部都可以使
用这个变量

局部变量
局部变量是在函数内部定义的变量,只能在函数内部使用
函数执行结束后,函数内部的局部变量,会被系统回收
不同的函数,可以定义相同的名字的局部变量,但是各用各的不会产生影响

局部变量的作用
在函数内部使用,临时保存函数内部需要使用的数据

局部变量

执行会报错

def demol():
    # 定义一个局部变量
    num=10
    print num
# 在函数内部定义的变量,不能在其他位置使用
print num
demol()

这里写图片描述

报错,因为内部变量定义
"""
def demo1():
    # 定义了一个局部变量
    # 出生:执行了下方的代码后,才会被创建
    # 死亡:函数执行完后,
    num  = 10
    print num
def demo2():
    # demo1函数内部定义的变量不能在其他函数使用
    pass
    print num
demo1()
demo2()

这里写图片描述

# 不同的函数可以定义相同名字的局部变量,不会产生影响
def demo1():
    demo1_num=10
    num =20
    print demo1_num
def demo2():
    demo2_num=20
    print demo2_num
demo1()
demo2()

这里写图片描述

num = 10
def demo1():
    # 使用赋值语句,会在函数内部,定义一个局部变量
    num = 100
    print 'demo1=====> %d' % num
def demo2():
    print 'demo2=======> %d' % num
demo1()
demo2()

这里写图片描述

num = 10
def demo1():
    # 希望修改全局变量的值 使用global关键字 声明一下变量即可
    # global  关键字会告诉解释器后面是一个全局变量
    # 再用赋值语句时,就不会创建局部变量了
    global num
    num = 100
    print 'demo1=====> %d' % num
def demo2():
    print 'demo2=======> %d' % num
demo1()
demo2()

这里写图片描述

在开发的时候,注意要把模块中的所有全局变量定义在其他函数的上方
"""
num = 10
title='westos'
name='lily'


def demo():
    print '%d' % num
    print '%s' % title
    print '%s' % name
demo()

这里写图片描述

# 全局变量一般用gl_num,一般不与局部变量重名
gl_num=10

def demo1():
    num=99
    print num
    print gl_num
def demo2():
    print gl_num
demo1()
demo2()



(鼠标移动到变量名上,点击右键,选择refactor   rename 可以将所有变量改名)

这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值