python引入

sys.path 和sys.modules sys.path包含了module的查找路径;
sys.modules包含了当前所load的所有的modules的dict(其中包含了builtin的modules);

比如“/usr/lib/python3.4/site-packages”,如果我写了 一个 exp.py 文件放在这个文件下,那么我在自己的系统写的 python3 文件都可以采用 import exp 导入。

还可以看到还有一个是“”,及当前文件夹,假如 存在如此的 一个 文件 结构:

parent/
        one/<br>                                              
            __init__.py
            exp.py
            exp2.py
        exp3.py

  exp.py和exp2.py都在one目录下,那么在exp2.py中可以通过 import exp 导入exp.py

  而exp3.py和one都处在parent目录下,那么在exp3.py中可以通过 import one.exp 导入exp.py

3.init.py的作用

  偶尔可以看到有些人写的包下面还会有一个init.py,它的作用是在导入包时首先执行的。

  假设在 exp3.py 中写入 import one.exp ,那么会首先执行 init.py 文件,接着会执行exp.py文件

  如果不需要,init.py可以为空,也可以干脆不加入init.py

4.if name == “main

  也有时候会看到 .if name == “main” 语句,它的作用就是当此文件没有被作为导入的文件使用时执行 if 语句块里的程序。

  假如 exp.py 中加入了 if name == “main” ,然后 python3 exp.py,就会执行这个语句块里的内容

  而 如果 if name == “exp”,时则是被 其他文件 以 “import exp”导入时执行的部分

  有如果是 if name == “one.exp”,时则是被 其他文件 以 “import one.exp”导入时执行的部分

  注意 在 “import exp”时是不会执行 if name == “one.exp”中的内容的!同样: “import one.exp“是不会执行 if name == “exp”中的内容的

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值