2017-02-21 19 views
12

मैं एक कामकाज करने की कोशिश कर रहा हूं। 'अपेक्षित' और 'गॉट' परिणाम समान हैं, लेकिन मेरा कामकाज अभी भी विफल रहता है। यह असफल रहा है क्योंकि प्रिंटआउट में x-axis y-axis के बाद पिछली जगहें हैं जिन्हें मैंने अपने डॉकस्ट्रिंग में शामिल नहीं किया है। हालांकि मैं इसे कैसे शामिल करूं? जब मैं मैन्युअल रूप से रिक्त स्थान डालता हूं, और परीक्षण करता हूं, तब तक यह सफलतापूर्वक चलता है जब तक मैं कर्सर को वहां रखता हूं।एक डॉक्टरेट में पिछली जगहों को कैसे सम्मिलित करें, ताकि वास्तविक और अपेक्षित परिणाम समान दिखाई देने पर भी असफल न हो?

x- अक्ष y- अक्ष ______________________ [यहाँ कर्सर]

हालांकि, अगर मैं कहीं और मेरे कर्सर के साथ परीक्षण चलाने, तो अवांछित स्पेस भी निकल जाते हैं और परीक्षण विफल रहता है।

मुझे पता है कि वास्तव में अजीब लगता है, लेकिन यह वही है!

import pandas as pd 
import doctest 


class NewDataStructure(pd.DataFrame): 
    """ 
    >>> arrays = [[1, 1, 2, 2], [10, 20, 10, 20]] 
    >>> index = pd.MultiIndex.from_arrays(arrays, names=('x-axis', 'y-axis')) 
    >>> data_input = {"Pressure (Pa)": [1+1j, 2+2j, 3+3j, 4+4j], 
    ...    "Temperature": [1, 2, 3, 4]} 
    >>> new_data_variable = NewDataStructure(data=data_input, index=index, title="Pressures and temperatures") 
    >>> print new_data_variable 
    New Data Structure Pressures and temperatures: 
        Pressure (Pa) Temperature 
    x-axis y-axis        
    1  10    (1+1j)   1 
      20    (2+2j)   2 
    2  10    (3+3j)   3 
      20    (4+4j)   4 

    """ 
    def __init__(self, data, index, title): 
     super(NewDataStructure, self).__init__(data=data, index=index) 
     self.title = title 

    def __str__(self): 
     return "New Data Structure {}:\n{}".format(self.title, super(NewDataStructure, self).__str__()) 

doctest.testmod() 

नीचे मेरी परिणाम है जब यह विफल:

इस कोड है। यहां तक ​​कि यहां तक ​​कि आप x-axis y-axis के बाद क्षेत्र का चयन करने में सक्षम होना चाहिए और पता लगा सकते हैं कि पिछली जगहें हैं या नहीं।

Failed example: 
    print new_data_variable 
Expected: 
    New Data Structure Pressures and temperatures: 
        Pressure (Pa) Temperature 
    x-axis y-axis 
    1  10    (1+1j)   1 
      20    (2+2j)   2 
    2  10    (3+3j)   3 
      20    (4+4j)   4 
Got: 
    New Data Structure Pressures and temperatures: 
        Pressure (Pa) Temperature 
    x-axis y-axis        
    1  10    (1+1j)   1 
      20    (2+2j)   2 
    2  10    (3+3j)   3 
      20    (4+4j)   4 
+0

बुला 'क्योंकि रिक्त स्थान निकाल दिए जाते हैं लिपि को बचाने पर। क्या? –

+0

@MadPhysicist मैंने अपना प्रश्न सही कर दिया है। – bluprince13

+0

क्या यह आपका खुद का कोड है जो टेबल बनाता है? यदि ऐसा है, तो यह आउटपुट में पिछली जगहों को दबाए रखें। –

उत्तर

10

मैं एक समाधान नहीं मिला, normalize white space flag

का उपयोग कर इसे

>>> print new_data_variable # doctest: +NORMALIZE_WHITESPACE 

के रूप में या तो doctest में डाल या जब doctest

doctest.testmod(optionflags= doctest.NORMALIZE_WHITESPACE) 
संबंधित मुद्दे