क्या नीचे 2 आयात विवरणों में कुछ अंतर है? या बस वही बात?इन 2 आयातों के बीच कोई अंतर?
from package import *
import package
क्या नीचे 2 आयात विवरणों में कुछ अंतर है? या बस वही बात?इन 2 आयातों के बीच कोई अंतर?
from package import *
import package
from package import *
स्थानीय नेम स्पेस में पैकेज से सब कुछ का आयात करता है; यह अनुशंसित नहीं है क्योंकि यह अवांछित चीजें पेश कर सकता है (जैसे एक स्थानीय जो ओवरराइट करता है)। यह एक त्वरित और आसान आयात उपकरण है, लेकिन यदि चीजें गंभीर हो जाती हैं, तो आपको from package import X,Y,Z
, या import package
वाक्यविन्यास का उपयोग करना चाहिए।
import package
पैकेज से स्थानीय package
ऑब्जेक्ट में सबकुछ आयात करता है। तो यदि पैकेज something()
फ़ंक्शन लागू करता है, तो आप इसे package.something()
द्वारा उपयोग करेंगे।
इसके अलावा, एक और बात यह है कि इस बारे में बात की जानी चाहिए नेस्टेड नाम स्थान मामला है: मान लीजिए कि आप समारोह package.blabla.woohoo.func()
है, तो आप import package.blabla.woohoo
और उपयोग कर सकते हैं package.blabla.woohoo.func()
, लेकिन यह भी जटिल है। इसके बजाए, इसे करने का आसान तरीका from package.blabla import woohoo
है और फिर woohoo.func()
या from package.blabla.woohoo import func
का उपयोग करें, और उसके बाद func()
का उपयोग करें। मुझे लगता है कि इसका मतलब बनता है। यदि ऐसा नहीं होता है, तो यहां वर्णन करने के लिए एक कोड टुकड़ा है:
import package.blabla.woohoo
package.blabla.woohoo.func()
from package.blabla import woohoo
woohoo.func()
from package.blabla.woohoo import func
func()
आशा इस मदद करता है :)
अंतर पैकेज के लिए एक नाम स्थान का उपयोग है।
from package import *
class_in_package()
बनाम
import package
package.class_in_package()
वे बहुत अलग हैं, [आयात कर रहा है पायथन मॉड्यूल] को देखने के (http://effbot.org/zone/import-confusion.htm)। –