zoukankan      html  css  js  c++  java
  • Python开发——函数【作用域】

    变量的查找是由内向外的

     1 # 全局变量
     2 name = 'yuan'
     3 # 定义函数
     4 def change1():
     5     print(name)     # yuan
     6 # 调用函数
     7 change1()
     8 print(name)         # yuan
     9 
    10 print('################################')
    11 
    12 # 全局变量
    13 name = 'yuan'
    14 # 定义函数
    15 def change1():
    16     name = 'Lucy'   # Lucy
    17     print(name)
    18 # 调用函数
    19 change1()
    20 print(name)         # yuan

    变量的使用、先声明、后使用

    局部作用域内不能修改全局变量【解释错误】

    coun+= 1
     1 coun = 10
     2 def f():
     3     # 解释二、局部作用域内有coun,应先声明,后使用
     4     print(coun)
     5     # 解释一、局部作用域内不能修改全局变量【错误】
     6     # coun = 2
     7 
     8     # coun+=1,等同于上面,两部操作  1、【使用】查找  2、【声明】修改
     9     # coun+= 1
    10 f()

    在局部作用域内定义全局变量

     1 # 全局变量
     2 name = 'yuan'
     3 def change():
     4     # 定义此处的name为全局变量
     5     global name
     6     name = 'Lucy'
     7     print(name)     # Lucy
     8 
     9 change()
    10 print(name)         # Lucy

    列表

    1 name = ['yuan','Lucy']
    2 
    3 def change2():
    4     name.append('Lucy')
    5     print(name)     # ['yuan', 'Lucy', 'Lucy']
    6 
    7 change2()

    定于局部变量为上一级变量

    嵌套函数:函数套函数

     1 name = 'yuan'
     2 def sd():
     3     name = 'lili'
     4     def df():
     5         # 全局变量
     6         # global name
     7 
     8         # 上一级的变量
     9         nonlocal name
    10 
    11         name = 'yuli'
    12     df()
    13     print(name)
    14 
    15 print(name)     # yuan
    16 sd()            # yuli
    17 print(name)     # yuan

    向前引向

    1 # 向前引用
    2 def a():
    3     print("fun a")
    4     b()
    5 # a()出错
    6 def b():
    7     print("fun b")
    8 a()
  • 相关阅读:
    hive sql常用整理-hive引擎设置
    hdfs数据到hbase过程
    phoenix表操作
    HBase describe table 参数说明
    HBase 常用Shell命令
    sqoop的基本语法详解及可能遇到的错误
    Linux maven 下 jar包下载不下来的解决方法
    Linu 修改maven的setting保护文件
    Mybatis generator 自动生成代码
    Springmvc mvc:exclude-mapping不拦截 无效
  • 原文地址:https://www.cnblogs.com/yuanlili/p/8604204.html
Copyright © 2011-2022 走看看