2013-04-08 9 views
12

एक question है जो इस बारे में सोचता है लेकिन मुझे रुचि रखने वाले सभी बिंदुओं के बारे में बात नहीं करता है।पायथन पीईपी 8: मॉड्यूल की शुरुआत में खाली लाइनें

पीईपी 8 रिक्त लाइनों के बारे में कहते हैं:

Separate top-level function and class definitions with two blank lines. 

तब यदि आपके पास:

  1. केवल एक वर्ग के एक मॉड्यूल:

    # -*- coding: utf-8 -*- 
    
    
    class A(object): 
        pass 
    

    अलग शुरू करो वर्ग और दो खाली लाइनों के साथ एन्कोडिंग टिप्पणी?

  2. इंपोर्ट स्टेटमेंट और वर्गों के एक मॉड्यूल:

    # -*- coding: utf-8 -*- 
    
    import module 
    
    
    class B(object): 
        pass 
    
    
    class C(object): 
        pass 
    

    आप इंपोर्ट स्टेटमेंट और एक खाली लाइन के साथ टिप्पणी एन्कोडिंग अलग है?

    और आयात कथन और दो रिक्त रेखाओं के साथ वर्ग की शुरुआत?

  3. और एक मुख्य मॉड्यूल:

    #!/usr/bin/env python 
    # -*- coding: utf-8 -*- 
    
    import module 
    
    
    def main(): 
        a = module.A() 
        return 0 
    
    
    if __name__ == '__main__': 
        status = main() 
    

    आप इंपोर्ट स्टेटमेंट और दो खाली लाइनों के साथ उच्च-स्तरीय समारोह को अलग करते हैं?

    और शीर्ष-स्तरीय फ़ंक्शन का अंत और दो खाली रेखाओं के साथ सशर्त कथन?

उत्तर

8

एक पायथन मॉड्यूल pep8 कहा जाता है जो अगर यह pep8 दिशानिर्देशों के अनुपालन में देखने के लिए अपने कोड की जांच कर सकते हैं नहीं है।

मैंने आपके द्वारा सूचीबद्ध उदाहरणों पर पेप 8 चलाने का प्रयास किया, और उनमें से कई रूपों और सामान्य रूप से, पेप 8 कार्यक्रम ने उन सभी को पेप 8 दिशानिर्देशों के अनुरूप माना। तो मूल रूप से, आपके सभी सवालों का जवाब हां है।

कुछ स्तर की व्यक्तिपरकता मौजूद है - उदाहरण के लिए, आपके पास मुख्य फ़ंक्शन और if __name__ == '__main__' सेगमेंट के बीच दो या एक नईलाइन हो सकती है। हालांकि, मैं पेप 8 अनुपालन के बारे में बहुत ज्यादा चिंता नहीं करता - बस अन्य कोड विश्लेषकों (जैसे pylint) के साथ पेप 8 प्रोग्राम डाउनलोड और इंस्टॉल करें। जब तक आपका कोड उन परीक्षणों को पार कर रहा है, यह काफी अच्छा है।

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