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解析模块(ConfigParser)使用方法
Dec 10 Python
Python中scatter函数参数及用法详解
Nov 08 Python
python 实现登录网页的操作方法
May 11 Python
Python实现深度遍历和广度遍历的方法
Jan 22 Python
Python直接赋值、浅拷贝与深度拷贝实例分析
Jun 18 Python
python原类、类的创建过程与方法详解
Jul 19 Python
Python获取时间戳代码实例
Sep 24 Python
python+OpenCV实现车牌号码识别
Nov 08 Python
tensorflow安装成功import tensorflow 出现问题
Apr 16 Python
更新升级python和pip版本后不生效的问题解决
Apr 17 Python
浅谈Python中的模块
Jun 10 Python
python中round函数保留两位小数的方法
Dec 04 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
PHP读取MySQL数据代码
2008/06/05 PHP
PHP开发的一些注意点总结
2010/10/12 PHP
Firefox getBoxObjectFor getBoundingClientRect联系
2008/10/26 Javascript
JavaSript中变量的作用域闭包的深入理解
2014/05/12 Javascript
javascript中for/in循环及使用技巧
2015/09/01 Javascript
AngularJS封装$http.post()实例详解
2017/05/06 Javascript
浅谈Angular路由守卫
2017/08/26 Javascript
Angular.js中window.onload(),$(document).ready()的写法浅析
2017/09/28 Javascript
详解JS转换数值函数Number()、parseInt()、parseFloat()
2018/08/24 Javascript
Node.js Buffer模块功能及常用方法实例分析
2019/01/05 Javascript
详解webpack引入第三方库的方式以及注意事项
2019/01/15 Javascript
浅谈Javascript常用正则表达式应用
2019/03/08 Javascript
[01:12]DOTA2 2015年秋季互动指南
2015/11/10 DOTA
Python的Flask框架及Nginx实现静态文件访问限制功能
2016/06/27 Python
python常见排序算法基础教程
2017/04/13 Python
使用python telnetlib批量备份交换机配置的方法
2019/07/25 Python
django框架面向对象ORM模型继承用法实例分析
2019/07/29 Python
python中pygame安装过程(超级详细)
2019/08/04 Python
pytorch随机采样操作SubsetRandomSampler()
2020/07/07 Python
如何用Python 加密文件
2020/09/10 Python
HTML中fieldset标签概述及使用方法
2013/02/01 HTML / CSS
基于HTML5 的人脸识别活体认证的实现方法
2016/06/22 HTML / CSS
英国领先的在线旅游和休闲零售商:lastminute.com
2019/01/23 全球购物
英国排名第一的餐具品牌:Denby Pottery
2019/11/01 全球购物
Farfetch巴西官网:奢侈品牌时尚购物平台
2020/10/19 全球购物
Linux Interview Questions For software testers
2012/06/02 面试题
简短大学毕业感言
2014/01/18 职场文书
军人违纪检讨书
2014/02/04 职场文书
应届毕业生自荐信例文
2014/02/26 职场文书
医德医风演讲稿
2014/05/20 职场文书
应届大专生自荐书
2014/06/16 职场文书
领导干部作风建设自查报告
2014/10/23 职场文书
党小组考察意见
2015/06/02 职场文书
瞿秋白纪念馆观后感
2015/06/10 职场文书
幼儿园班级管理心得体会
2016/01/07 职场文书
基于Android10渲染Surface的创建过程
2022/08/14 Java/Android