python系列教程227——使用import还是from

打印 上一主题 下一主题

主题 1014|帖子 1014|积分 3042

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
朋友们,如需转载请标明出处:https://blog.csdn.net/jiangjunshow
声明:在人工智能技能教学期间,不少学生向我提一些python相关的题目,所以为了让同学们把握更多扩展知识更好地明确AI技能,我让助理负责分享这套python系列教程,希望能帮到大家!由于这套python教程不是由我所写(有时间有空也会到场编写),所以不如我的AI技能教学风趣幽默,学起来比力枯燥;但它的知识点还是讲到位的了,也值得阅读!想要学习AI技能的同学可以点击跳转到我的教学网站。PS:看不懂本篇文章的同学请先看前面的文章,循序渐进天天学一点就不会觉得难了!
开门见山,我个人更推荐使用import。
有些同学可能认为from要高效一些。例如对于下面这一行代码
  1. from module import name1
复制代码
有些同学可能认为只是把name1加载到了内存空间中。
实在不是如许的。这句语句也会将整个module全部加载到内存空间中。也就是说import和from都会将整个模块的加载到内存空间中,所以说它们在效率上是一样的。
我之所以推荐使用import,是因为我觉得from语句会有很多潜在的威胁。下面由我一一道来。
如果from语句复制过来的变量名与本文件中的变量名称同名。那么变量就会被静静的覆盖掉了。在下面写代码时,你以为你是用了这个变量,但实在他是另外一个变量。这个结果相当严峻。就像在夜场里,你跟你女朋友去玩,碰巧有另外一个女的跟你女朋友穿了同样的衣服,你以为他是你女朋友,你上去就摸了一把,结果却不是你女朋友,摸错人了。结果可能会相当严峻,要不就是进派出所,要不就是进医院。
另外一个潜在的威胁就是,当使用reload的时间。 From语句导入的变量可能依然引用着之前旧版本的值。有同学可能不太熟悉reload指令,简而言之他就是重新加载模块的意思。也就是说你以为你自己重新加载了模块,但是那些变量还是使用着之前旧版本模块的值。
当然也不是让大家完全不使用from语句。因为使用import语句的话,后面使用每个变量时都要在前面跟上模块名。而使用form语句就可以直接使用变量名,可以减少一些代码编写量。但是无论如何,我觉得在一个大型的多人协作的系统中,尽量使用inport语句,如许会避免很多潜在题目的发生,也有利于系统代码后期的维护。
你更喜欢使用import还是from呢?可以在批评区说说你的见解,大家来讨论讨论。
点赞,收藏,谢谢!

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

老婆出轨

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表