python判断一个变量是否已经设置的方法


Posted in Python onAugust 13, 2020

python判断一个变量是否已经设置的方法:可以使用locals()函数来进行判断。

locals()函数会以字典类型返回当前位置的全部局部变量,具体使用方法如:【'testvar' in locals().keys()】。

方法如下:

第一种方法使用内置函数locals():

locals():获取已定义对象字典

'testvar'   in   locals().keys()

第二种方法使用内置函数dir():

dir():获取已定义对象列表

'testvar'   in   dir()

第三种方法使用内置函数vars():

vars():获取已定义对象字典

vars().has_key('testvar')

举例:

#testvar未定义
print 'testvar' in locals().keys()
#输出:False

print 'testvar' in dir()
#输出:False

print vars().has_key('testvar')
#输出:False

#定义testvar
testvar=1

print 'testvar' in locals().keys()
#输出:True

print 'testvar' in dir()
#输出:True

print vars().has_key('testvar')
#输出:True
-------------------------------------
##说明:
    如果定义的函数有参数,但是调用时没有参数,则会报其它错误,而不是变量未定义的错误!!!
def func1 (srcdir):
    print srcdir

try:
    func1()
except:
    print "1111"

内容扩展:

Python判断一个变量是否存在

在调用一个变量的时候,如果这个变量没有被定义,那么python会报错。

要解决的方法也很简单,就是事先给变量赋一个空值。

但是也可以通过调用系统的内置函数来判断一个变量名是否已经被定义了。有3个内置函数都可以实现。

res1 = 'test' in locals().keys()
res2 = 'test' in dir()
res3 = 'test' in vars().keys()
print(res1,res2,res3)  # 变量test暂时还没有定义,返回False
test = ""  # 定义变量test
res4 = 'test' in locals().keys()
res5 = 'test' in dir()
res6 = 'test' in vars().keys()
print(res4,res5,res6)  # 变量test已经被定义了,返回True

到此这篇关于python判断一个变量是否已经设置的方法的文章就介绍到这了,更多相关python怎么判断一个变量是否已经设置内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python基础教程之循环介绍
Aug 29 Python
Python中str is not callable问题详解及解决办法
Feb 10 Python
Python爬虫信息输入及页面的切换方法
May 11 Python
详解django的serializer序列化model几种方法
Oct 16 Python
python装饰器简介---这一篇也许就够了(推荐)
Apr 01 Python
Python中单线程、多线程和多进程的效率对比实验实例
May 14 Python
pyqt5实现绘制ui,列表窗口,滚动窗口显示图片的方法
Jun 20 Python
解决Python内层for循环如何break出外层的循环的问题
Jun 24 Python
python网络编程之多线程同时接受和发送
Sep 03 Python
python 哈希表实现简单python字典代码实例
Sep 27 Python
解决使用Pandas 读取超过65536行的Excel文件问题
Nov 10 Python
python 实现IP子网计算
Feb 18 Python
vscode+PyQt5安装详解步骤
Aug 12 #Python
python使用列表的最佳方案
Aug 12 #Python
Python实现播放和录制声音的功能
Aug 12 #Python
Python实现文件压缩和解压的示例代码
Aug 12 #Python
Python爬取数据并实现可视化代码解析
Aug 12 #Python
Python下载网易云歌单歌曲的示例代码
Aug 12 #Python
Python爬取12306车次信息代码详解
Aug 12 #Python
You might like
[FAQ]PHP中的一些常识:类篇
2006/10/09 PHP
测试PHP连接MYSQL成功与否的代码
2013/08/16 PHP
php实现比较两个文件夹异同的方法
2015/06/18 PHP
解决微信授权回调页面域名只能设置一个的问题
2016/12/11 PHP
Laravel 队列使用的实现
2019/01/08 PHP
php写入mysql中文乱码的实例解决方法
2019/09/17 PHP
JavaScript 不只是脚本
2007/05/30 Javascript
jQuery中的bind绑定事件与文本框改变事件的临时解决方法
2010/08/13 Javascript
jquery 年会抽奖程序
2011/12/22 Javascript
纯css+js写的一个简单的tab标签页带样式
2014/01/28 Javascript
confirm的用法示例用于按钮操作时确定是否执行
2014/06/19 Javascript
js实现从数组里随机获取元素
2015/01/12 Javascript
JAVASCRIPT代码编写俄罗斯方块网页版
2015/11/26 Javascript
js+canvas绘制矩形的方法
2016/01/28 Javascript
有关suggest快速删除后仍然出现下拉列表的bug问题
2016/12/02 Javascript
JS实现仿PS的调色板效果完整实例
2016/12/21 Javascript
jQuery实现搜索页面关键字的功能
2017/02/16 Javascript
js图片上传的封装代码
2017/08/01 Javascript
jQuery EasyUI的TreeGrid查询功能实现方法
2017/08/08 jQuery
react高阶组件经典应用之权限控制详解
2017/09/07 Javascript
Angular4编程之表单响应功能示例
2017/12/13 Javascript
vue中实现methods一个方法调用另外一个方法
2018/02/08 Javascript
浅谈VueJS SSR 后端绘制内存泄漏的相关解决经验
2018/12/20 Javascript
Vue中全局变量的定义和使用
2019/06/05 Javascript
python 专题九 Mysql数据库编程基础知识
2017/03/16 Python
如何用itertools解决无序排列组合的问题
2017/05/18 Python
Python实现读取机器硬件信息的方法示例
2018/06/09 Python
10 行 Python 代码教你自动发送短信(不想回复工作邮件妙招)
2018/10/11 Python
利用Python将文本中的中英文分离方法
2018/10/31 Python
python 限制函数执行时间,自己实现timeout的实例
2019/01/12 Python
50行Python代码获取高考志愿信息的实现方法
2019/07/23 Python
python实现电子词典
2020/03/03 Python
python 实现 hive中类似 lateral view explode的功能示例
2020/05/18 Python
python获取本周、上周、本月、上月及本季的时间代码实例
2020/09/08 Python
加拿大最大的书店:Indigo
2017/01/01 全球购物
超市中秋节活动方案
2014/02/12 职场文书