2017-01-08 5 views
5

उदाहरण के लिए, मान लीजिए कि मेरे पास एक ऐसा फ़ंक्शन है जो इनपुट पैरामीटर के रूप में दो numpy arrays लेता है। पहली सरणी 2-आयामी होना चाहिए और केवल फ्लोट होना चाहिए। दूसरी सरणी 1-आयामी होना चाहिए और केवल बूलियन होना चाहिए।अनिवार्य डेटाटाइप और आयामों के साथ इनपुट numpy arrays के लिए डॉकस्ट्रिंग प्रारूप

अब तक मैं वास्तव में इनपुट सरणी डेटाटाइप और डॉकस्ट्रिंग में आयाम निर्दिष्ट करने के लिए मौजूदा सम्मेलन नहीं ढूंढ पाया है।

def example_function(arr1, arr2): 
    """This is an example function. 

    Parameters 
    ---------- 
    arr1 : ndarray(dtype=float, ndim=2) 
     Array containing some kind of data. 
    arr2 : ndarray(dtype=bool, ndim=1) 
     Array containing some kind of mask. 

    """ 

यह एक 'सही' docstring प्रारूप पर विचार किया जा सकता है: एक संभव प्रारूप (एक आधार के रूप numpy docstring सम्मेलनों लेने) है कि मैं के बारे में सोचा यह गया था? (यानी क्या यह मौजूदा डॉकस्ट्रिंग सम्मेलनों के किसी भी नियम को तोड़ नहीं देता है?)

उत्तर

2

आयाम और आइटम प्रकार आपके सरणी के बारे में अतिरिक्त जानकारी हैं जो कार्य तर्क हैं। इस प्रकार के दस्तावेज़ के आधार पर इस प्रकार की तरह आप एक शैली की जरूरत है:

""" 
x : type 
    Description of parameter `x`. 
""" 

इस मामले में कौन सा की तरह होना चाहिए:

""" 
Parameters 
---------- 
arr1 : ndarray 
    2D array containing data with `float` type. 
arr2 : ndarray 
    1D mask array(containing data with boolean type). 
""" 

और ध्यान दें कि आप बेहतर डेटा प्रकार का वर्णन करने के आप और अधिक स्पष्टीकरण करना चाहते हैं और आपके फ़ंक्शन विवरण भाग में आयाम भी।

+0

आपके उत्तर में लाइन 6 होना चाहिए तो 'arr2: ndarray' होना चाहिए? – Xukrao

+0

@Xukrao हाँ, बस एक टाइपो, नोट के लिए धन्यवाद! – Kasramvd

संबंधित मुद्दे