亚洲免费在线视频-亚洲啊v-久久免费精品视频-国产精品va-看片地址-成人在线视频网

您的位置:首頁技術文章
文章詳情頁

module - python模塊from import語句相對導入,加不加點號有什么區別?

瀏覽:112日期:2022-07-28 13:58:53

問題描述

python版本為2.7

目錄結構

$ ls -R.:t.py util/./util:__init__.py __init__.pyc db.py db.pyc

內容

util/db.py

# coding=utf-8 var=100 def show(): print var

t.py

# coding=utf-8 from .util.db import var # util包前面加點print var if __name__==’__main__’: print var

運行報錯

$ python t.pyTraceback (most recent call last): File 't.py', line 3, in <module> from .util.db import varValueError: Attempted relative import in non-package

提示不能在non-package下導入。

在當前目錄下新建__init__.py后依然是相同錯誤。

但是將util前面的點號去掉之后可以正常輸出,為什么呢?

謝謝

問題解答

回答1:

相對導入只能用于同一個package里,并且包內的文件不能單獨運行

回答2:

t.py是作為主腳本執行的,如果里面有from .的方式就回報錯(只有包內模塊才用這中方式)即使加了_init_,但是你還是直接執行的,方式沒變。你應該改成python -m xxx.t

標簽: Python 編程
主站蜘蛛池模板: 久久久久久精 | 一级性毛片| 日韩欧美高清在线观看 | 国产精品大片天天看片 | 91久久精品国产亚洲 | 久久久久国产精品免费网站 | 一级片在线免费看 | 国产精品热久久毛片 | 在线看片日韩 | 最近日本免费观看视频 | 成年人免费在线视频观看 | 性欧美videos高清精品 | 欧美亚洲国产成人精品 | 午夜美女网站 | 韩国美女爽快毛片免费 | 久久免费看 | 在线播放波多野结衣 | 欧美成人aa | 久久视频在线视频 | 日韩欧美一区二区精品久久 | 一级做a爱片久久蜜桃 | 欧美久久久久久久一区二区三区 | 在线私拍国产福利精品 | 久久亚洲一级α片 | 欧美一区二区三区久久久人妖 | 欧美一区二区三区免费不卡 | 国产极品精频在线观看 | 国产亚洲欧美在线视频 | 特级aa毛片在线播放 | 手机看片日韩高清国产欧美 | 国内精品久久久久久中文字幕 | 高清午夜看片a福利在线观看琪琪 | 一区二区日韩欧美 | 亚洲国产精品第一区二区三区 | 国产91丝袜美腿在线观看 | 日本a级片免费观看 | 新版天堂资源中文8在线 | 亚洲久久成人 | 美女张开腿让男人捅的视频 | 成人久久影院 | 成人18视频在线 |