• python学习11函数


    ''''''
    '''
    函数:
    1.定义:指通过专门的代码组织,用来实现特定的功能的代码段,具有相对独立性,可供其他代码重复调用
    2.语法:
    def 函数名([参数]):
    函数体
    [return 返回值]
    3.函数名命名规则:
    (1)符合基本的标识符命名原则;
    (2)不能与现有内置函数名发生冲突
    (3)名称应该准确的表达函数的功能
    '''
    #1.不带参数的函数————求因数
    def factor_no_para():

    nums=10
    for i in range(1,11):
    if nums%i==0:
    print('%d'%(i))
    factor_no_para()

    #2.带参数函数格式————求因数2.0
    def factor_no_para2(nums): #在def(参数)这里面的参数叫形式参数
    for i in range(1,nums+1):
    if nums%i==0:
    print(i)
    factor_no_para2(15) #15为给自定义函数传的值(参),叫实际参数

    '''
    4.调用函数模块
    通过import语句导入整个函数模块——导入后,通过模块名.函数名的连接方式调用函数
    还可以只调用指定函数:from 模块名 import 函数名1,函数名2...
    还可以导入所有函数:from 模块名 import *
    别名:若模块名,函数名过长,可以通过as语句定义别名的方式解决:模块名【函数名】 as 别名
    5.参数
    notes:1.不定长参数:(1)传递任意数量的参数值:*
    (2)传递任意数量的键值对:**
    2.参数可以传递元组,列表和字典
    '''
    def exam(name,score):
    print('name:'+name+',score:'+str(score))

    exam('liu',100)
    exam(name='wang',score=100)
    exam(score=90,name='ma')
    exam('li',score=50)

    def fruit(name,**attribute):
    print('name:'+name)
    return attribute

    print(fruit('watermelon',color='green',shape='圆形',taste='sweet')) #传递的是键值对
    '''
    结果为:name:watermelon
    {'color': 'green', 'shape': '圆形', 'taste': 'sweet'}
    '''
    '''
    6.作用域
    (1)全局变量:从赋值开始,后续代码都可以访问该变量
    (2)局部变量:只能在被定义的函数或者类内部被访问的变量
    7.关键字——global
    全局变量在函数中不能对其进行修改,如需修改,要先用global关键字声明
    '''
    i=10

    def sum1():
    global i #声明i为全局变量
    i=i+5
    print(i)
    sum1()
    print(i)
    '''
    8.闭包
    是介于全局变量和局部变量之间的一种特殊变量。

    '''
    j=5
    def sum2():
    k=2 #闭包变量k
    def sum3():
    i=k+j
    return i
    return sum3()
    print(sum2())
    '''
    9.nonlocal关键字
    外部函数定义一个变量,内部函数去调用,这个变量就叫闭包变量,如果内部函数想修改这个闭包变量,需要用nonlocal关键字声明。
    10.匿名函数
    lambda
    11.递归函数
    '''
    a=lambda x,y:x*y
    m=a(2,3)
    print(m)
  • 相关阅读:
    [SDOI2011] 消防 (树的直径,尺取法)
    [HNOI2006]公路修建问题 (二分答案,并查集)
    P1875 佳佳的魔法药水 (最短路,DP)
    [SCOI2016] 背单词 (Trie 树,贪心)
    [USACO08DEC] 秘密消息Secret Message (Trie树)
    [HDU4745] Two Rabbits (区间DP)
    [HDU4362] Palindrome subsequence (区间DP)
    评价手心输入法
    软件工程个人作业12
    第12周进度条
  • 原文地址:https://www.cnblogs.com/wsxcode/p/12318855.html
Copyright © 2020-2023  润新知