Conventions और PEP 8

Python में Software Engineering Principles

Adam Spannbauer

Machine Learning Engineer at Eastman

Conventions क्या हैं?

मुट्ठी भिड़ाना

झुककर अभिवादन

हैंडशेक

Python लोगो

Python में Software Engineering Principles

PEP 8 परिचय

PEP 8

"Code को लिखा कम और पढ़ा ज़्यादा जाता है"

Python में Software Engineering Principles

PEP 8 का उल्लंघन

#define our data
my_dict ={
    'a'  : 10,
'b': 3,
    'c'  :   4,
             'd': 7}
#import needed package
import numpy as np
#helper function
def DictToArray(d):
    """Convert dictionary values to numpy array"""
    #extract values and convert
              x=np.array(d.values())
              return x
print(DictToArray(my_dict))
array([10,  4,  3,  7])
Python में Software Engineering Principles

PEP 8 का पालन

# Import needed package
import numpy as np

# Define our data
my_dict = {'a': 10, 'b': 3, 'c': 4, 'd': 7}


# Helper function
def dict_to_array(d):
    """Convert dictionary values to numpy array"""
    # Extract values and convert
    x = np.array(d.values())
    return x


print(dict_to_array(my_dict))
array([10,  4,  3,  7])
Python में Software Engineering Principles

PEP 8 टूल्स

PEP 8 और PyCharm

pycodestyle पैकेज

Python में Software Engineering Principles

pycodestyle का उपयोग

datacamp@server:~$ pip install pycodestyle
datacamp@server:~$ pycodestyle dict_to_array.py
dict_to_array.py:5:9: E203 whitespace before ':'
dict_to_array.py:6:14: E131 continuation line unaligned for hanging indent
dict_to_array.py:8:1: E265 block comment should start with '# '
dict_to_array.py:9:1: E402 module level import not at top of file
dict_to_array.py:11:1: E302 expected 2 blank lines, found 0
dict_to_array.py:13:15: E111 indentation is not a multiple of four
Python में Software Engineering Principles

pycodestyle से आउटपुट

pycodestyle त्रुटि आउटपुट

Python में Software Engineering Principles

अभ्यास करते हैं!

Python में Software Engineering Principles

Preparing Video For Download...