新手:pycharm使用创建directory和Python package的区别??
PHPz
PHPz 2017-04-17 17:30:15
0
3
713

新手,刚学了2天Python 发现很有趣,有个问题想问下

如图:d.py在ssffe模块module中 c.py在一个名字为tesat的文件夹directory中
临时建立的,名字随便打的别介意。。
在d.py中
print 'dddd'

在c.py中
from ssffe import d
print 'cccc'

执行c.py 输出:
dddd
cccc

问题:我想在d.py中引用 c.py
发现用语句 from tesat import c 程序报错

即导入系统中其他目录的Python文件

导入语句怎么写
写了很多仍然报错

PHPz
PHPz

学习是最好的投资!

全部回覆(3)
PHPzhong

directory就是有個目錄,pycharm會認為你這個裡面可能存放一些你的資源,比如css/js什麼的,或者是一些配置文件,裡面沒有__init__.py,而package是會創建__init__.py的這關乎到你的哪些python檔案對外是可見的。
或你可以這麼理解,python在文件層面或類別名稱層面上的可見性用__2個下劃線表示,對於文件的可見,用package裡面定義的__init__.py描述

A是一個你說的Directory
B是一個package 裡面有__init__.py
你如果不想在A裡面加__init__.py使其變成一個package的話
手動在程式碼裡動態加上A的目錄到sys.path裡
這樣python import 模組的時候會按照sys.path列表順序載入指定的模組
這樣你from API import foo的時候會找到A下面的python檔

API.py的實作

# -*- coding: utf-8 -*-


def foo():
    print "foo called"
巴扎黑

沒人回答嗎?

Peter_Zhu

directory就是個普通目錄;package是帶有__init__.py檔案的目錄,這和python的import機制相關,
建議看一下python tutorial第六章Modules(安裝後就有,或者上官網,不想看英文的話中文python文檔)。

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板