Python动态声明变量赋值代码实例


Posted in Python onDecember 30, 2019

这篇文章主要介绍了Python动态声明变量赋值代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

通过exec()、globals()和locals()

# 通过exec()
for i in range(1, 4):
  # 第一次循环 i=1 时,会执行字符串中的python语句 ex1 = "exec1",以此类推
  exec(f'ex{i} = "exec{i}"')

# 通过globals()和locals()
def test():
  # globals()
  for i in range(1, 4):
    # 第一次循环 i=1 时,执行 globals()['gb1'] = 'global1', globals()是一个dict
    globals()[f'gb{i}'] = f'global{i}'

  # locals()
  for i in range(1, 4):
    locals()[f'lc{i}'] = f'local{i}'

  # 尝试打印locals的变量
  try:
    print(lc1, lc2, lc3)  # 会报错
  except Exception as e:
    print(e)
    print(locals()['lc1'], locals()['lc2'], locals()['lc3'])  # 通过键值对

if __name__ == '__main__':
  # 执行
  test()
  print('---------------------')
  # 打印函数定义的全局变量
  print(gb1, gb2, gb3)
  print('---------------------')
  # 打印通过exec()定义的变量
  print(ex1, ex2, ex3)

输出结果:

name 'lc1' is not defined
local1 local2 local3
---------------------
global1 global2 global3
---------------------
exec1 exec2 exec3

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python程序设计入门(1)基本语法简介
Jun 13 Python
python使用xlrd模块读写Excel文件的方法
May 06 Python
Python实现桶排序与快速排序算法结合应用示例
Nov 22 Python
Python多线程中阻塞(join)与锁(Lock)使用误区解析
Apr 27 Python
漂亮的Django Markdown富文本app插件的实现
Jan 02 Python
Python爬虫学习之获取指定网页源码
Jul 30 Python
Pyinstaller 打包exe教程及问题解决
Aug 16 Python
Python函数中的可变长参数详解
Sep 12 Python
tensorflow 获取所有variable或tensor的name示例
Jan 04 Python
Python递归函数特点及原理解析
Mar 04 Python
pycharm专业版远程登录服务器的详细教程
Sep 15 Python
Python实现简单的猜单词小游戏
Oct 28 Python
使用pytorch实现可视化中间层的结果
Dec 30 #Python
在Pytorch中计算自己模型的FLOPs方式
Dec 30 #Python
Pytorch之保存读取模型实例
Dec 30 #Python
Python爬虫解析网页的4种方式实例及原理解析
Dec 30 #Python
Python中如何将一个类方法变为多个方法
Dec 30 #Python
pytorch 实现打印模型的参数值
Dec 30 #Python
Python如何基于smtplib发不同格式的邮件
Dec 30 #Python
You might like
PHP制作百度词典查词采集器
2015/01/29 PHP
PHP实现一个简单url路由功能实例
2016/11/05 PHP
php使用正则表达式获取字符串中的URL
2016/12/29 PHP
PHP使用zlib扩展实现GZIP压缩输出的方法详解
2018/04/09 PHP
JavaScript全排列的六种算法 具体实现
2013/06/29 Javascript
jquery中focus()函数实现当对象获得焦点后自动把光标移到内容最后
2013/09/29 Javascript
jQuery插件实现静态HTML验证码校验
2015/11/06 Javascript
Nodejs抓取html页面内容(推荐)
2016/08/11 NodeJs
基于jQuery中ajax的相关方法汇总(必看篇)
2017/11/08 jQuery
webpack vue项目开发环境局域网访问方法
2018/03/20 Javascript
JavaScript实现的3D旋转魔方动画效果实例代码
2019/07/31 Javascript
vue监听键盘事件的相关总结
2021/01/29 Vue.js
[40:19]2018完美盛典CS.GO表演赛
2018/12/17 DOTA
探索Python3.4中新引入的asyncio模块
2015/04/08 Python
Python简单进程锁代码实例
2015/04/27 Python
详解Django通用视图中的函数包装
2015/07/21 Python
python使用os.listdir和os.walk获得文件的路径的方法
2017/12/16 Python
对python3 urllib包与http包的使用详解
2018/05/10 Python
基于windows下pip安装python模块时报错总结
2018/06/12 Python
Linux下Pycharm、Anaconda环境配置及使用踩坑
2018/12/19 Python
canvas中普通动效与粒子动效的实现代码示例
2019/01/03 HTML / CSS
万得城电器土耳其网站:欧洲第一大电子产品零售商
2016/10/07 全球购物
Waterford加拿大官方网站:世界著名的水晶杯品牌
2016/11/01 全球购物
全球独特生活方式产品和礼品购物网站:AHAlife
2018/09/18 全球购物
印度服装购物网站:Limeroad
2018/09/26 全球购物
毕业生机械建模求职信
2013/10/14 职场文书
园林资料员岗位职责
2013/12/30 职场文书
医院搬迁方案
2014/06/14 职场文书
村委会贫困证明范本
2014/09/17 职场文书
2014年党员整改措施范文
2014/09/21 职场文书
2016继续教育培训学习心得体会
2016/01/19 职场文书
《黄山奇石》教学反思
2016/02/18 职场文书
学校2016年九九重阳节活动总结
2016/04/01 职场文书
解决Golang中goroutine执行速度的问题
2021/05/02 Golang
Pyhton模块和包相关知识总结
2021/05/12 Python
用Python可视化新冠疫情数据
2022/01/18 Python