zoukankan      html  css  js  c++  java
  • Python学习第八课——函数

    python函数(def)

    def test(x):  # x为形参
        y = x + 20
        return y
    
    
    # def:定义函数的关键字
    # test:函数名
    # ():内定义参数
    # x+=1:代码块
    # return:定义返回值
    s = test(10)  # 调用函数 test  10为实参
    print(s)  # 输出结果:30
    
    
    # 函数也可以不带参数
    def test1():
        x = 10
        y = x + 20
        return y
    
    
    print(test1())  # 输出结果: 30
    
    
    # *args 是将值处理成列表  **kwargs 是将值处理成字典
    def test2(x, *args, **kwargs):
        print(x)  # 1
        print(args)  # (2, 3)
        print(args[0])  # 2  处理成列表之后可以按照列表的方式按照下标取值
        print(kwargs)  # {'y': 2}
        print(kwargs['y'])  # 2  理成字典之后可以按照字典的方式,按照key取值
    
    
    test2(1, 2, 3, y=2)  # 输出结果 1 (2, 3) {'y': 2}

    全局变量与局部变量

    #  全局变量
    name = 'hanhan'  # 此变量为全局变量  所有下面函数都可以用
    
    
    def change_name():
        print('change_name', name)
    
    
    change_name()  # 输出结果 change_name hanhan
    
    print(name)  # 输出结果 hanhan
    
    #  局部变量
    name = 'junjun'  # 此变量为全局变量  所有下面函数都可以用
    
    
    def change_name():
        name = "junjun2"  # 该变量为局部变量 如果函数中有局部变量,优先读取局部变量,若没有局部变量,则找全局变量
        print('change_name', name)
    
    
    change_name()  # 输出结果 change_name junjun2
    
    print(name)  # 输出结果 junjun
    
    # 如何在函数中修改全局变量
    name = 'hanhan'  # 此变量为全局变量  所有下面函数都可以用
    
    
    def change_name():
        global name
        name = '全局变量已经修改'
        print('change_name', name)  # 这时候这个name 已经成为了‘全局变量已经修改’
    
    
    change_name()  # 输出结果 change_name hanhan
    print(name)  # 输出结果  全局变量已经修改
  • 相关阅读:
    现代软件工程系列 学生的精彩文章 (5) 其实还是人的问题
    4层结构
    Spring Rich Client Project
    有关“理想”与“现实”的两篇文章
    TechEd归来
    Domain Model
    一次Java出错体验
    真心感谢热心帮助我的朋友
    Tapestry & Groovy
    采用 Domain Model 的架构设计的简单问答
  • 原文地址:https://www.cnblogs.com/pyhan/p/12170349.html
Copyright © 2011-2022 走看看