Python3.5局部变量与全局变量作用域实例分析


Posted in Python onApril 30, 2019

本文实例讲述了Python3.5局部变量与全局变量作用域。分享给大家供大家参考,具体如下:

1、局部变量与全局变量定义:

子程序(函数)中定义的变量称为:局部变量;在程序顶级(一开始)定义的变量称为:全局变量

2、局部变量与全局变量作用域:

局部变量作用域:定义该变量的子程序;全局变量作用域:整个程序。

当局部变量与全局变量同名时,在定义局部变量的子程序内局部变量其作用;其他地方全局变量起作用。

#!/usr/bin/env python
# -*- coding:utf-8 -*-
# Author:ZhengzhengLiu
school = "Qing hua"    #全局变量
def change_name(name):
  school = "Bei da"  #局部变量
  print(school)
  print("before change:",name)
  name = "LIU"  #局部变量,只在函数内部生效(局部变量的作用域就是定义该变量的子程序)
  print("after change:",name)
print(school)
name = "liu"    #全局变量,在整个程序中都有效
change_name(name)
print(name)

运行结果:

Qing hua
Bei da
before change: liu
after change: LIU
liu

注:在函数内部要将局部变量修改为全局变量,需要用global声明(不要这样用:程序多处调用时会导致逻辑混乱,不利于调试)。

school = "Qing hua"    #全局变量
def change_name(name):
  print("before change:",name)
  name = "LIU"  #局部变量,只在函数内部生效(局部变量的作用域就是定义该变量的子程序)
  print("after change:",name)
  global school    # 函数内将局部变量改为全局变量用global声明
  school = "Bei da"
name = "liu"    #全局变量,在整个程序中都有效
change_name(name)
print(name)
print("school:",school)

运行结果:

before change: liu
after change: LIU
liu
school: Bei da

3、除了整数和字符串,列表、字典、集合、类中可以在子程序中(子函数)通过修改局部变量达到修改全局变量的目的。

names = ["liu","zhang","wang"]
def chang_name():
  names[0] = "sun"
  print(names)
chang_name()
print(names)

运行结果:

['sun', 'zhang', 'wang']
['sun', 'zhang', 'wang']

注:在Python中,Ctrl+?快捷键可以实现多行注释

关于Python相关内容感兴趣的读者可查看本站专题:《Python函数使用技巧总结》、《Python面向对象程序设计入门与进阶教程》、《Python数据结构与算法教程》、《Python字符串操作技巧汇总》、《Python编码操作技巧总结》及《Python入门与进阶经典教程》

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
Python3通过Luhn算法快速验证信用卡卡号的方法
May 14 Python
基于python的Tkinter实现一个简易计算器
Dec 31 Python
python去除文件中空格、Tab及回车的方法
Apr 12 Python
Python yield 使用方法浅析
May 20 Python
python 调用win32pai 操作cmd的方法
May 28 Python
Python实现的概率分布运算操作示例
Aug 14 Python
Tensorflow 查看变量的值方法
Jun 14 Python
Python3 导入上级目录中的模块实例
Feb 16 Python
Python Numpy 实现交换两行和两列的方法
Jun 26 Python
如何使用Python脚本实现文件拷贝
Nov 20 Python
Python更换pip源方法过程解析
May 19 Python
python自定义函数def的应用详解
Jun 03 Python
Python一行代码实现快速排序的方法
Apr 30 #Python
python批量识别图片指定区域文字内容
Apr 30 #Python
Python3.5装饰器典型案例分析
Apr 30 #Python
python如何制作缩略图
Apr 30 #Python
Python3.5装饰器原理及应用实例详解
Apr 30 #Python
11个Python Pandas小技巧让你的工作更高效(附代码实例)
Apr 30 #Python
python制作图片缩略图
Apr 30 #Python
You might like
一步一步学习PHP(1) php开发环境配置
2010/02/15 PHP
使用php发送有附件的电子邮件-(PHPMailer使用的实例分析)
2013/04/26 PHP
ThinkPHP中pathinfo的访问模式、路径访问模式及URL重写总结
2014/08/23 PHP
php冒泡排序与快速排序实例详解
2015/12/07 PHP
PHP中include()与require()的区别说明
2017/02/14 PHP
PHP从数组中删除元素的四种方法实例
2017/05/12 PHP
laravel框架中视图的基本使用方法分析
2019/11/23 PHP
javascript改变position值实现菜单滚动至顶部后固定
2013/01/18 Javascript
js绑定事件this指向发生改变的问题解决方法
2013/04/23 Javascript
js获取时间并实现字符串和时间戳之间的转换
2015/01/05 Javascript
浅析JavaScript中的事件机制
2015/06/04 Javascript
JS实现下拉菜单赋值到文本框的方法
2015/08/18 Javascript
Jquery promise实现一张一张加载图片
2015/11/13 Javascript
Angular2中Bootstrap界面库ng-bootstrap详解
2016/10/18 Javascript
AngularJS中的DOM操作用法分析
2016/11/04 Javascript
微信小程序 navbar实例详解
2017/05/11 Javascript
详解webpack2+React 实例demo
2017/09/11 Javascript
JavaScript实现为事件句柄绑定监听函数的方法分析
2017/11/14 Javascript
jQuery实现数字自动增加或者减少的动画效果示例
2018/12/11 jQuery
seajs和requirejs模块化简单案例分析
2019/08/26 Javascript
JavaScript中break、continue和return的用法区别实例分析
2020/03/02 Javascript
Vue仿Bibibili首页的问题
2021/01/21 Vue.js
深入理解python多进程编程
2016/06/12 Python
对Python3中bytes和HexStr之间的转换详解
2018/12/04 Python
在python下读取并展示raw格式的图片实例
2019/01/24 Python
python 弧度与角度互转实例
2020/04/15 Python
10行Python代码实现Web自动化管控的示例代码
2020/08/14 Python
基于HTML5 Canvas的3D动态Chart图表的示例
2017/11/02 HTML / CSS
瑞典多品牌连锁店:Johnells
2021/01/13 全球购物
详细的本科生职业生涯规划范文
2014/09/16 职场文书
2015年国庆晚会主持词
2015/07/01 职场文书
2017年大学生寒假社会实践活动总结
2016/04/06 职场文书
创业计划书之校园跑腿公司
2019/09/24 职场文书
Python中Cookies导出某站用户数据的方法
2021/05/17 Python
排查MySQL生产环境索引没有效果
2022/04/11 MySQL
动作冒险《Hell Is Us》将采用虚幻5 消灭怪物探索王国
2022/04/13 其他游戏