老师有几个问题
来源:2-1 实战自定义包(1)
慕少4349589
2019-07-19 08:32:41
老师,请问几个问题
1:关于本节的程序,为什么不在一个python file里直接全部完成,而一定要在一个package里设置前半部分程序的函数,而再使用test设置后半部分的函数,不太明白为什么要新创建一个test file, 在原本的file里为什么不能全部完成。其次,这个test file为什么要创建在trans package之外呢。
2:那个包里自带的-init-file,是做什么的呢,课堂上这一部分太抽象了没听懂。
3:请问为什么一开始只是讲在phthon上写代码,为什么忽然还是引入cmd,他能补充py charm的哪些功能呢。在cmd 下讲解的例如 os,这类函数,为什么要在cmd这个平台上使用,是不是在py charm上无法使用。 其次,这些东西,是函数吗,他们的和我们之前所讲的函数有什么区别呢。在使用这些函数时,为什么要先import呢。
谢谢
1回答
同学,您好。
本小节是关于python自定义包的具体实现。包除了作为模块管理(代码管理)之外,还有一层含义就是实现项目的分模块开发和管理,之所以在课程中分开来写代码就是为了给大家呈现真实的项目开发过程就是将功能性的函数封装到一个包中,而在另一个模块中对其进行调用实现不同的逻辑功能,而在一个文件中进行所有代码的编写会给后期的维护带来巨大的困难,一般在企业实际开发中不会采用这种方式
关于第二个问题,包(Package)中的__init__.py文件的作用主要如下:
(1)标识所在的目录是一个包,而非一个文件夹
(2)可以被当做一个模块、库文件使用import xxx 或(from xxx import xxx) 语句进行导入
(3)可在__init__.py文件中引入其他的内置模块或第三方模块,供当前包中的其他文件使用以实现复杂的功能,从而更好的体现了封装性
关于第三个问题,引入cmd形式的文件调用可以实现针对单一文件的执行以及后台运行某一服务等功能,在Pycharm中若项目结构足够庞大,启动和停止都比较缓慢,这样也是拓展大家的在以后开发中的技巧;os也是python的内置模块之一,在终端开启的python环境也需要跟pycharm中使用一样进行引入,这样方便调用其中的方法(函数)
如果我的回答解决了你的疑惑,欢迎采纳!^_^ 祝学习愉快~~~
相似问题