python main函数中变量默认为global variable
在python的main函数中的变量默认为全局变量,而其他的def函数中的变量则默认为局部变量。
当然,局部变量会优先于全局变量,在执行formal_print(t_global)语句时便可看出。
测试代码如下:
#!/usr/bin/env python
#coding=utf-8
#测试python的全局变量,局部变量的机制
def formal_print(s_global):
#常规的传参用法,传递参数进行print,变量名可任意
print "formal_print: ", s_global
return
def global_print():
#无参数传递,直接对global variable进行print
print "global_print: ", s_global
return
def global_print_para(st):#此处虽然传递了一个参数st,但是并没有在函数中用到
print "global_print_para: ", s_global
return
def test_global():
stest = 'test_global'
print "test_global: ", stest
return
if __name__ == '__main__':
#main函数中声明的变量默认为global variable,
#而其他def函数中声明的变量则默认为local variable
s_global = 'global variable s_global'
t_global = 'global variable t_global'
formal_print(s_global)
formal_print(t_global)
global_print()
test_global()
#formal_print(stest)#虽然在test_global()中声明了变量stest,但stest并非全局变量
print 'End.'
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~
2016-03-11 mysql binlog解析概要
2016-03-11 session劫持以及预防