zoukankan      html  css  js  c++  java
  • 初识python: 局部变量、全局变量

    定义:

    全局变量:在函数一开始定义的变量(全局范围内都可以使用)

    局部变量:在函数中定义的变量(只能在函数中使用)

    局部变量,例:

    #局部变量
    def chang_name(name):
        print('修改前名字:',name)
        name='simple' #定义局部变量,此变量的作用域只在此函数中
        print('修改后的名字:',name)
    chang_name('ch_simple') #调用函数
    print(name) #函数体外使用局部标量报错

    因为局部变量只能在函数体内使用,故print(name) 出错,错误信息如下:

    全局变量,例:

    #全局变量
    name = 'simple'#定义全局变量
    def chang_name():
        name2 = name #定义局部变量,并将全局变量值赋给它(函数体内使用全局变量)
        print('全局变量:',name2) # 调用全局变量
        print('局部变量:', name2)  # 调用局部变量
    chang_name()#调用函数
    print('函数体外使用全局变量:',name) #函数体外使用全局变量

    执行结果:

     函数体内修改全局变量,例:  

    #函数体内修改全局变量
    # 注:强烈建议不要使用函数修改全局变量
    name = 'simple' #定义全局变量
    def chang_name(x):
        global name #声明全局变量
        print('修改前:',name) #函数体内使用全局变量
        name = x #函数体内修改全局变量值
        print('修改后:',x)
    chang_name('ch_simple')
    print('验证全局变量name是否修改:',name)

    输出结果:

    注:强烈建议不要在函数体内修改或定义全局变量
    世风之狡诈多端,到底忠厚人颠扑不破; 末俗以繁华相尚,终觉冷淡处趣味弥长。
  • 相关阅读:
    java.io.file
    连线小游戏
    发票类型区分的正则表达式(仅区分普票专票)
    mybatis: No enum constant org.apache.ibatis.type.JdbcType."VARCHAR"
    bootstrap inputfile 使用-上传,回显
    微积分极限中一例
    oracle 查看表结构语句
    redis无法连接
    项目配置shiro原缓存注解失效
    bug 找不到或无法加载主类main.java.*
  • 原文地址:https://www.cnblogs.com/simple-li/p/9739335.html
Copyright © 2011-2022 走看看