| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> Python知识库 -> Py02 python中的交互式命令行模式 、脚本、导入、重载、运行 -> 正文阅读 |
|
[Python知识库]Py02 python中的交互式命令行模式 、脚本、导入、重载、运行 |
F1交互提示模式?1.交互提示模式下不会把代码保存到文件中 用处 体验语言 测试程序 2.交互解释器会自动打印表达式结果 不需使用print 不需要缩进 S2?交互提示模式? 模块? PATH1.模块 应用于另一文件所导入的文件 ,脚本 主文件,注意只有模块中是变量属性才会编译为字节码.pyc? 如果有输出,且主文件脚本是不会显示保留编译出的.pyc 2.安装Python解释器时 注意勾选设置系统PATH 3.交互提示模式 不会把代码保存到一个文件中 主要作用 实验部分代码 是搞清楚一段代码在做什么的最快方式 应用于测试 4.交互式命令行下 print语句不是必须的 不需要缩进 T3 运行文件1.系统shell命令行 、python交互式命令行 两者区分开 pycharm集成底端有这两部分 2.流重定向 系统shell上,? 运行该文件后并将结果输入到save.text中
3.系统shell中需要加.py import后不需要加后缀名 4. 如果不使用pycharm等idle运行则会出现 一个弹出的黑DOS控制台窗口 之后瞬间消失 解决办法,可在最后一行加入一个input()函数 这样就可以使该控制台窗口不消失 5.在系统shell层面支持 输入流重定向
6.若想抑制运行窗口弹出可以以.pyw扩展名结尾 此文件只会显示你的脚本构建窗口,而非控制台窗口 大多用于python编写的用户接口上 F4 模块导入与重载1.从术语上将 以.py结尾的python源代码文件? 都是一个模块,其他文件可以通过导入? 来获取这个模块定义的内容, 导入的本质是载入另一个文件(只要import就会先运行一遍该文件? (如果该文件中有输出也会输出)? ),之后给予读取该文件的权限 2.主文件 顶层文件为脚本 3.导入文件是另一种运行文件的方式 4.导入是一个开销很大的操作? 每个文件导入只能运行一次? ? 5.若想不重启当前程序? 不停止该程序? 而再次运行导入文件则使用reload函数 6.导入import? 是语句不是函数不需要加括号? 使用导入模块中的变量时? 文件名.变量? 的格式 7.reload(模块名)? 获得 已被加载的? 模块? 在重载前必须保证已成功导入该模块 8.python2.X版本reload()是内置函数? 3.X需要导入imp(3.4后被弃用 换了另一个库? importlib)库 9.一个模块文件可以通过2种语句读取? import? 、? from?? 10.读取某模块一个变量?可? import 整体导入该模块 之后 文件名.变量?或? from 文件名 import 变量 11.from 复制了模块的属性(变量)? 以便属性能成为接受者的直接变量? 这一次能够以? 变量? 引用? 而不用? 文件名.变量(import方式) 12.实际应用中? 一个模块文件往往定义一个以上的变量 13.import得到具有属性的模块,而使用? from? 相当于在脚本代码中复制了 模块文件中变量代码行加入该脚本的代码中? ? 也因此若之前有同名变量则会覆盖导致错误(from相当于在源文件中加入代码行即重新对之前变量重赋值而覆盖) 14.在模块文件中定义多个变量查看可用? dir()函数? 他来获取模块内部全部变量名列表
?F5模块与命名空间1.每个模块文件是一个变量包,都是自包含的命名空间,模块文件相互之间不能看到除非显示导入了那个文件? 因为? 文件名.变量 的读取方式? 最小化命名空间的冲突? (文件名相同,在树形文件系统中是不允许的所以不可能完全一样? 所以相互之间不会发生冲突) 2.reload? 只是在测试中常用? 有文章称? 当修改某模块文件时需要reload? 是不对的,reload只是重新在运行中再运行模块文件仅此 一般用不到 3.exec内置函数运行模块文件? 从交互式命令模式下启动文件而不必导入的一种方式?? 4.exec不会真的导入? 只会运行一遍该文件? 后续不能引用其中变量名? 和from 原理相同? 相当于复制粘贴到exec位置代码? ?不同的是from只会复制其中指定变量? exec复制其整个文件源代码到exec位置? ?自然也有和from一样会有覆盖此前已有同名变量名的坏处? 而且该错误不会被抛出。 5.import 每个进程只运行文件一次,并且会把文件生成到一个单独的模块命名空间中? 以便它的赋值不会改变作用域中的变量。???????? |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/15 13:57:04- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |