当前位置: 首页 > news >正文

access 网站开发设计app的软件

access 网站开发,设计app的软件,网站推广计划至少包括,合肥建设信息网站文章目录 global关键字可变类型和不可变类型数据的内存地址单模块(单个py文件)的全局变量示例总结 多模块(多个py文件)的全局变量from x import x导入全局变量示例 import x导入全局变量示例 总结 global关键字 global 的作用范围是模块(.py)级别#xff1a; 当你在一个模块 当你在一个模块文件中使用 global 声明变量时这个变量只在该模块的全局命名空间中存在其他模块并不能直接访问它。 globals() 函数返回当前全局命名空间的字典(每个模块都有自己独立的全局命名空间) 可以通过globals()函数动态新增或者删除全局变量 globals().update(变量名变量值) # 类似于操控字典一样去新增删减或者修改都可以可变类型和不可变类型数据的内存地址 不可变类型数据(数字类型数据[整型浮点型]字符串布尔值元组冻结集合frozenset) 创建一个不可变类型的对象时Python 会为每个不同的值分配一个唯一的内存地址(frozenset 对象例外这是因为 Python 的 frozenset 类型不像一些其他不可变类型如 int 或 str那样在创建相同值的对象时进行缓存或重用。每次创建 frozenset 对象时Python 都会分配一个新的内存地址。) a 12 b 12 print(id(a), id(b)) # 2063368331504 2063368331504 print(a is b) # True当修改变量的指向对象时(对象内容不可修改所以只能修改指向的对象即重新赋值)变量的内存地址发生改变 a 12 b 12 print(id(a), id(b)) # 3104829481200 3104828162640 print(a is b) # False可变类型数据(字典列表集合) 创建一个可变类型数据时每次创建一个新的对象时Python 会为其分配一个新的内存地址即使这些对象的初始值相同。当修改变量指向对象的内容时内存地址不会发生改变 a [1, 2, 3] b [1, 2, 3] print(id(a), id(b)) # 2089263067200 2089267730752 a.append(4) print(id(a), id(b)) # 2089263067200 2089267730752单模块(单个py文件)的全局变量 单模块意味着代码只包含一个 Python 文件。在这种情况下全局变量定义在模块的顶层可以在模块内的任意地方访问和修改。 示例 # global_var.py global_variable 10 # 定义全局变量 global_variable_list [1, 2, 3] def modify_variable():global global_variable # 声明使用全局变量global global_variable_listglobal_variable 1global_variable_list.append(4)print(fModified global_variable: {global_variable})modify_variable() # 输出Modified global_variable: 11 print(global_variable) # 输出11 print(global_variable_list) # 输出[1, 2, 3, 4] 总结 全局变量可以在整个模块的任何函数或方法中被访问。使用 global 关键字声明某个变量是全局变量以便函数内部对其进行修改。这种情况下不管变量的对象是属于可变还是不可变修改以后全局都会做出相应的修改 多模块(多个py文件)的全局变量 from x import x导入全局变量 在多模块的场景下可能有多个 .py 文件。这时如果全局变量的对象类型为不可变数据类型时最好不要使用from x import x来在其他模块中访问。 根本原因是不可变类型数据的内存地址是唯一的如果在引用的py文件的全局作用域中对其引用的变量进行修改的话相当于在当前模块的全局作用域中重新声明了一个拥有相同变量名并指向新对象的变量(拥有新的内存地址) 原本模块里面的值是不会受到影响的甚至如果是在当前模块的函数里面直接修改的话python解释器会直接错 示例 假设有三个模块 module1.py 和 module2.pymodule_main.py其中 module1.py 中定义了全局变量。 module1.py # module1.py global_variable 20 # 定义全局变量 global_variable_list [1, 2, 3] module2.py # module2.py from module1 import global_variable ,global_variable_list # 导入 module1 模块global_variable 1 # 这其实相当于在当前全局变量作用域重新声明了一个新的变量def modify_variable():# global_variable 1 直接在函数内部修改其他模块的全局变量代码会直接报错global_variable_list.append(4)module_main.py # module_main.py from module1 import global_variable ,global_variable_list # 导入 module1 模块 from module2 import modify_variableif __name__ __main__:modify_variable()print(global_variable) # 输出20print(global_variable_list) # 输出[1, 2, 3, 4] import x导入全局变量 示例 假设有三个模块 module1.py 和 module2.pymodule_main.py其中 module1.py 中定义了全局变量。 module1.py # module1.py global_variable 20 # 定义全局变量 global_variable_list [1, 2, 3] module2.py # module2.py import module1def modify_variable():module1.global_variable 1 module1.global_variable_list.append(4)module_main.py # module_main.py from module1 import global_variable ,global_variable_list # 导入 module1 模块 from module2 import modify_variableif __name__ __main__:modify_variable()print(global_variable) # 输出21print(global_variable_list) # 输出[1, 2, 3, 4] 总结 当全局变量为可变数据类型时使用from x import x或者import x都可以当全局变量为不可变数据类型时推荐使用import x这样在对变量进行重新赋值以后在整个项目中才能起到类似于全局变量的作用
http://www.w-s-a.com/news/938590/

相关文章:

  • 哪些网站是单页面应用程序北京门头沟山洪暴发
  • 织梦(dedecms)怎么修改后台网站默认"织梦内容管理系统"标题关键词优化收费标准
  • 网站设计和备案企业官网网站建设免费
  • 公司概况-环保公司网站模板搜索引擎营销的基本流程
  • 门户网站建设经验天津市建设银行租房网站
  • 百度推广 帮做网站吗怎样修改网站的主页内容
  • 网站怎么做dns解析公司官网改版方案
  • 湛江市住房和城乡建设局网站杭州网站公司哪家服务好
  • 设计网站公司湖南岚鸿设计镜像的网站怎么做排名
  • 你注册过哪些网站微信app下载安装官方版2019
  • 杭州滨江的网站建设公司人才招聘网网站策划方案
  • 门户网站是指提供什么的网站网站优化需要工具
  • 和小男生做的网站代理公司注册步骤
  • 天猫网站建设的目标是什么seo有些什么关键词
  • 网站前端建设都需要什么莱芜信息港网页
  • 如何做360网站优化网站建设培训教程新手入门到精通
  • 做网站有的浏览器怎么做网站网站赚钱
  • 织梦 做网站 教程百度登录个人中心官网
  • ftp怎么修改网站wordpress分享积分
  • 营销策划方案的步骤西安关键词优化软件
  • 南宁自己的网站移动互联网技术学什么
  • 2017湖北建设教育协会网站自己接单做网站
  • 定制网站建设制作h5网站要多久
  • 泰安中呼网站建设有限公司 概况个人网站的设计与实现参考文献
  • 圣诞节网站怎么做怎么获取网站的图片
  • 想找个人做网站音乐网站建设教程视频教程
  • 网站收录一键提交阿里巴巴做网站多少钱
  • 怎么做网站投放广告商务网站建设实训报告
  • 服装代销的网站源码国内电子商务网站有哪些
  • qq空间怎么做网站做企业平台的网站有哪些