Python 全局变量


前言

例如:python是一门解释型语言,程序边解释边执行,相对编译型语言来说效率低一些,但是比较友好,越来越受到大家的喜爱。


提示:以下是本篇文章正文内容,下面案例可供参考

一、为什么要用全局变量?

我们用全局变量的目的大概有两个:
1.对一个工程的代码整体控制,只需要一两个全局变量的开关就可以在不同功能之间切换;
2.减少参数个数,对于通用的量就使用全局变量表示,便于同意修改,附带的优势就是减少传参的个数。
正所谓有优点就有缺点,全局变量如果不小心被某部分代码修改就会带来很严重的问题。

二、项目工程中使用全局变量

感觉python工程中使用全局变量和编译型的语言还有点区别,本文主要介绍使用全局切换代码的使用场景和功能。
工程目录大概如下:
–pro\
----main.py

from global import global_par
global_par = 2  # 切换场景开关,只想在main中修改,必须放在其他import前面

from model_a.a import func_a
from model_b.b import func_b

func_a()
func_b()

----global.py

	global_par = 1

----model_a\
------a.py

def func_a():
	if global_par ==1:
		print("场景1")
	else:
		print("场景2")

----model_b\

	global_par = 1

------b.py

def func_b():
	if global_par ==1:
		print("场景业务1")
	else:
		print("场景业务2")

我想在main.py中修改global.py的全局变量起到对项目场景的切换作用(其实直接在global.py文件中修改全局变量的值是最方便的,但是只想在main中修改,可以达到快速切换目的):

这一点就特别需要注意,在main文件中的第一件事情就是去import全局变量,再修改其值为需要的控制值,这一步一定要在import其他项目模块之前,不然这个修改对某些模块不生效

总结

全局变量使用恰当的话可以快速切换代码功能,但是使用中也要谨慎小心,避免引入问题!

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 在 Python 中,全局变量是在程序的最外层定义的变量,可以在程序的任何地方访问。在函数内部使用全局变量时,需要在函数中使用 `global` 关键字声明一下。 例如: ```python x = 10 # 全局变量 def func(): global x # 使用 global 声明 x 为全局变量 x = 20 # 修改全局变量 x print(x) func() # 输出 20 print(x) # 输出 20,因为 x 已经被修改为 20 ``` 需要注意的是,全局变量的使用应该尽可能的避免,因为全局变量会增加代码的复杂度,同时也会增加代码出错的可能性。在编写程序时,应该尽可能地使用局部变量。 ### 回答2: Python中的全局变量是在函数外部声明的变量,可以在程序的任何地方被访问和修改。在Python中,任何没有在函数内部声明的变量都被视为全局变量。 要在函数内部使用全局变量,可以使用`global`关键字来声明变量。在函数内部使用`global`关键字后,可以对全局变量进行赋值或修改操作。这样做可以避免函数内部创建一个新的同名局部变量,而是直接在函数外部的全局变量上进行操作。 另一种方式是通过函数的参数传递全局变量。在函数调用时,将全局变量作为参数传递给函数,并在函数内部使用该参数进行操作。这种方法在需要多个函数操作同一个全局变量时比较方便和灵活。 尽管全局变量可以在程序的任何地方被访问和修改,但是应该谨慎使用全局变量,尤其是在大型程序中。过多的全局变量会让代码难以理解和维护,并且容易引发意想不到的bug。为了提高代码的可读性和可维护性,最好将全局变量的使用限制在必要的范围内,并使用局部变量来封装和传递数据。 ### 回答3: Python中的全局变量是在整个程序中都可以访问的变量,包括函数内部和外部。可以通过在函数内部使用`global`关键字来声明一个变量为全局变量。 在函数内部修改全局变量时,需要在函数内部首先使用`global`关键字声明该变量为全局变量,否则Python会将它当作一个局部变量并创建一个新的同名局部变量。 全局变量在程序中可以被所有的函数和模块访问和修改,但是在编写代码时应谨慎使用全局变量,因为全局变量容易造成命名冲突和代码不易维护。 举例来说,假设有一个全局变量`count`,我们可以在函数内部使用`global count`来声明该变量是全局变量,然后对其进行修改或访问。 ```python count = 0 def add(): global count count += 1 def display(): print(count) add() display() # 输出 1 ``` 此外,全局变量还可以在函数之外的地方使用,例如在模块中定义全局变量,并在其他模块中引用和修改。 总之,全局变量是在Python程序中可以被所有函数和模块访问和修改的变量,需要使用`global`关键字来声明,并且应该谨慎使用以避免产生不必要的问题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值