from module import * Statement
"from module import *" Statement का उपयोग Python Module से सभी Functions Import करने के लिए किया जाता है।
उदाहरण
यदि आप math Module से सभी Functions Import करना चाहते हैं और उन्हें Call करते समय "math." Prefix नहीं करना चाहते, तो आप इसे निम्न प्रकार से कर सकते हैं:
>>> from math import * >>> sin(0) 0.0 >>> cos(0) 1.0
चेतावनी - क्यों Avoid करना चाहिए:
किसी भी Reasonably Large Code Set के लिए, यदि आप import * करते हैं तो आप इसे Module में Cement कर देंगे, जिसे Remove करना असंभव होगा। ऐसा इसलिए है क्योंकि यह Determine करना Difficult होता है कि Code में उपयोग की जाने वाली Items 'module' से आ रही हैं, जिससे उस Point तक पहुंचना आसान हो जाता है जहां आप सोचते हैं कि आप Import का उपयोग नहीं कर रहे हैं लेकिन यह सुनिश्चित करना Extremely Difficult होता है। यह Basically Namespace को Clutter कर देता है और आपको अपने Module में चीजों को Name करने के लिए कम Options छोड़ देता है।
Problems with import *:
- Namespace Pollution: सैकड़ों Names Current Namespace में Import हो जाते हैं
- Name Conflicts: आपके Variables/Functions के साथ Conflict हो सकता है
- Readability: Code पढ़ने वाला नहीं जानता कि Function कहां से आया
- Debugging Difficulty: Source Trace करना मुश्किल
- Performance: थोड़ा Slow (Dictionary Lookup)
Better Alternatives:
# Specific Imports (अनुशंसित) from math import sin, cos, pi # Module Alias के साथ Import import math as m m.sin(0) # Selective Import with Alias from math import sin as sine, cos as cosine