最近開始跟著 廖雪峰的官方網站 學習python, 在此感謝一下博主提供這么棒的教程.
再進行元類這部分練習的時候, 將 ORM 的代碼全部寫到ORMPackage這個包中, 目錄結構如下:
目錄.png
在hello.py
中導入ORM.py
這個文件的時候, 采用import ORMPackage.ORM
和import ORM
兩種方式均不能正常的導入:
hello.py
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import ORM
u = User(id = 123, name='codiy', email='codiy_huang@163.com', password='123456')
u.save()
import ORMPackage.ORM
會提示 name 'User' is not defined
錯誤
import ORM
會提示No module named ORM
錯誤
后來根據 這篇文章 的方法, 應該是在導入的時候, 沒有將包所在的目錄添加進去;
改成下面的代碼:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import sys
import os
sys.path.append(os.getcwd() + '/ORMPackage')
from ORM import User
u = User(id = 123, name='codiy', email='codiy_huang@163.com', password='123456')
u.save()
將包所在的目錄添加到sys.path
后正常運行.