model - एनाकोंडा और स्पाइडर में पैकेज लोड त्रुटि




load ipython anaconda spyder (2)

मेरे पास तीन अजगर 2.7 फ़ाइलें हैं जो एनाकोंडा 4.3.1 में स्पाइडर 3.1.4 में हैं

(1). TestClass.py :Just define a class 
import numpy as np
class TestClass:
    def getArray(self):
        return np.zeros((3,4));
(2). a1.py
from TestClass import *;
tt=TestClass();

(3). a2.py
#just a empty python file

जब मैं स्पायडर में "रनफाइल" "a1.py" करता हूं, तो एक टेस्ट क्लास इंस्टेंट टी बनाया गया था, और मैं स्पाइडर के आईप्याथॉन कंसोल में निम्न कोड चलाता हूं:

tt.getArray()
Out[9]: 
array([[ 0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.]])

यह सही ढंग से काम करता है, लेकिन जब मैं स्पाइडर में a2.py (एक खाली फ़ाइल) चलाता हूं, और मैं स्पाइडर के आईप्याथॉन कंसोल में "tt.getArray ()" फिर से चलाता हूं, तो त्रुटि की घटनाएं:

tt.getArray () ट्रेसबैक (सबसे हाल का कॉल अंतिम):

फ़ाइल "", लाइन 1, में tt.getArray ()

फ़ाइल "TestClass.py", लाइन 6, getArray return np.zeros ((3,4)) में;

AttributeError: 'NoneType' ऑब्जेक्ट का कोई विशेषता 'शून्य' नहीं है जो कि numpy लापता हो गया है, मेरे अनुभव में स्पाइडर में कोई भी "रनफाइल" ऑपरेटर नक्सली लापता हो जाएगा। "Tt" के बारे में कोई भी कोड a2.py में नहीं लिख सकता है क्योंकि एक नया फ़ाइल चलाने में टीटी alread आयात किए गए पैकेज अनुपलब्ध हैं क्या यह एक बग है? या स्पाइडर, Ipython आगे कॉन्फ़िगर या पैरामीटर सेट की जरूरत है? या स्पाइडर में "रनफाइल" कमांड को अतिरिक्त पैरामीटर की आवश्यकता है?

मैं इस त्रुटि से पागल हो गया हूं, कृपया मुझे बताओ कि मैं गलत कहां गया था।


Answers

क्योंकि स्पाइडर में "उपयोगकर्ता मॉड्यूल रीलोडे (यूएमआर)" संपत्ति है, हम "रनफाइल" फ़ंक्शन एक स्क्रिप्ट चलाते हैं, स्पाइडर सभी उपयोगकर्ता निर्मित मॉड्यूल को पुनः लोड कर देगा।

मेरे पर्यावरण में, स्पाइडर टेस्ट क्लास को पुनः लोड करता है, लेकिन नोड को फिर से लोड नहीं करता है, और टेम्प्लेक्लस ने घिसा हुआ नंबरयुक्त उतार दिया था, इसलिए "रनफाइल" उपयोगकर्ता मॉड्यूल अमान्य हो सकता है।

उपकरण-> वरीयताएँ-> पायथन इंटरप्रेटर में हम यूएमआर बंद कर सकते हैं


यह सवाल पुराना है, लेकिन jquery की आवश्यकता के बिना ऐसा करने का कोई तरीका है, या ब्राउज़र को जमा करना।

Image1.onLoad में, इसे image2 लोड करें।
Image2.onLoad में, इसे image3 लोड करें।
Image3.onLoad में, इसे image4 लोड करें।
....
छवि एन। ऑनलोड में इसे अपना मुख्य कार्य लोड करें।

मुझे यकीन नहीं है कि यह करने का यह सबसे अच्छा तरीका है, लेकिन कम से कम ब्राउज़र को ठंडा करने से बेहतर है।
आप अपनी सभी ऑडियो फाइलों या जो भी अन्य संसाधनों की आवश्यकता है, या किसी भी अन्य जावास्क्रिप्ट को चलाने के लिए आपको भी लोड करने में सक्षम हैं।

ब्राउज़र को फ्रीज करना जरूरी नहीं है