美文网首页
python引用python函数

python引用python函数

作者: 国宝级初学者 | 来源:发表于2021-11-25 09:55 被阅读0次

    工程的文件结构树图如下:

    A

       |----- __init__.py

       |-----  a.py

       |---------B

             |--------- __init__.py

             |---------b.py

       |---------C

             |--------- __init__.py

             |--------c.py

    B,C同属于A的子目录,但是B,C之间是平行的。

    b.py,c.py代码分别如下:

    b.py:

    defb_hello():

    print"B_HELLO"

    c.py:

    defc_hello():

    print"C_HELLO"

    一、如果A中a.py要调用B中或者C中py,则可以如下方式调用(以B为例)

    from B import b

    b.b_hello()

    运行结果:B_HELLO

    二、如果是B中或者C中py调用B中或C中呢?

    这个时候如果我们依旧用如上所说调用,则会报错(这里是b.py调用c.py)

    >>> 

    Traceback (most recent call last):

    File"E:\testnow\A\B\b.py", line1,in

    fromCimportc

    ImportError: No module named C

    所以,这种方法不行,那如何做呢,如下

    importsys

    sys.path.append('E:\\testnow\\A\\C')#括号内容为文件的绝对路径

    importc

    defb_hello():

    print"B_HELLO"

    c.c_hello()

    用这种方法,输出结果是:C_HELLO

    也即刚才上面的“from 文件夹 import 模块名”只适用于父目录调用子目录的情况。。。而第二种方法则对所有的情况都适用,包括两个模块甚至都不在一个盘的情况。

    这里需要注意的一点是:sys.path添加目录时注意是在windows还是在linux下,windows下需要‘\\’否则会出错。

    相关文章

      网友评论

          本文标题:python引用python函数

          本文链接:https://www.haomeiwen.com/subject/hmxjtrtx.html