python - from ..xxxx import xxxx到底是什么意思呢?
問(wèn)題描述
flaskweb開(kāi)發(fā)書中:
1 from flask import render_template, redirect, request, url_for, flash 2 from flask_login import login_user, logout_user, login_required,current_user 3 from . import auth 4 from .. import db 5 from ..models import User 6 from ..email import send_email 7 from .forms import LoginForm,RegistrationForm
上述.和..起到什么作用呢?tree是這樣的
├── app│?? ├── auth│?? │?? ├── forms.py│?? │?? ├── forms.pyc│?? │?? ├── __init__.py│?? │?? ├── __init__.pyc│?? │?? ├── views.py│?? │?? └── views.pyc│?? ├── email.py│?? ├── email.pyc│?? ├── __init__.py│?? ├── __init__.pyc│?? ├── main│?? │?? ├── errors.py│?? │?? ├── errors.pyc│?? │?? ├── forms.py│?? │?? ├── __init__.py│?? │?? ├── __init__.pyc│?? │?? ├── views.py│?? │?? └── views.pyc│?? ├── models.py│?? ├── models.pyc│?? ├── static│?? │?? └── favicon.ico│?? └── templates│?? ├── 404.html│?? ├── 500.html│?? ├── auth│?? │?? ├── email│?? │?? │?? ├── confirm.html│?? │?? │?? └── confirm.txt│?? │?? ├── login.html│?? │?? ├── register.html│?? │?? └── unconfirmed.html│?? ├── base.html│?? ├── index.html│?? └── mail│?? ├── new_user.html│?? └── new_user.txt├── config.py├── config.pyc├── LICENSE├── manage.py├── README.md├── requirements.txt└── tests ├── __init__.py ├── test_basics.py └── test_user_model.py
這個(gè)腳本在app/auth/下
問(wèn)題解答
回答1:.. 和 . 就是這個(gè)本目錄和上級(jí)目錄的意思,你一定會(huì)用 cd .. 吧
? ls -altotal 1660drwxr-xr-x+ 189 caimaoy staff 6426 4 11 10:07 .drwxr-xr-x 5 root admin 170 12 7 2015 ..
python 里面這樣寫也是一個(gè)意思,拿
from ..models import User
作為例子
models 相對(duì)于 auth 就是要先回到上層才能找到。
回答2:from . 是從當(dāng)前文件所在的目錄下尋找模塊文件,from .. 就是當(dāng)前文件所在的目錄上級(jí)目錄。
參考官方說(shuō)明在這:https://docs.python.org/2/tut...
回答3:from xx import xxximport xxpython使用這個(gè)導(dǎo)入模塊,模塊可以是函數(shù),類,集合。
這種方式主要是區(qū)別命名,如果調(diào)用的模塊函數(shù)名重復(fù),可以加以區(qū)分。
import xx 調(diào)用整個(gè)包。from xx import xxx 調(diào)用包里某個(gè)函數(shù)。
比如:我要書包 import bag我要書包里的書 from bag import book
回答4:你想要的答案不在這里,認(rèn)真找本python基礎(chǔ)的書籍,關(guān)于模塊導(dǎo)入的內(nèi)容好好看看。
相關(guān)文章:
1. javascript - js中遞歸與for循環(huán)同時(shí)發(fā)生的時(shí)候,代碼的執(zhí)行順序是怎樣的?2. python - linux怎么在每天的凌晨2點(diǎn)執(zhí)行一次這個(gè)log.py文件3. php如何獲取訪問(wèn)者路由器的mac地址4. android - 鍵盤遮擋RecyclerView5. 如何分別在Windows下用Winform項(xiàng)模板+C#,在MacOSX下用Cocos Application項(xiàng)目模板+Objective-C實(shí)現(xiàn)一個(gè)制作游戲的空的黑窗口?6. javascript - jQuery each 方法第三個(gè)參數(shù)args 如何解釋?7. javascript - 在 vue里面用import引入js文件,結(jié)果為undefined8. java - new + 類名,一定需要申明一個(gè)對(duì)象嗎?9. 小程序怎么加外鏈,語(yǔ)句怎么寫!求救新手,開(kāi)文檔沒(méi)發(fā)現(xiàn)10. javascript - vue-resource中如何設(shè)置全局的timeout?
