Konvansiyonlar ve PEP 8

Python'da Yazılım Mühendisliği İlkeleri

Adam Spannbauer

Machine Learning Engineer at Eastman

Konvansiyonlar Nedir?

Yumruk Tokuşturma

Eğilen Kişi

El Sıkışma

Python Logosu

Python'da Yazılım Mühendisliği İlkeleri

PEP 8 Tanıtımı

PEP 8

"Kod, yazıldığından çok daha sık okunur"

Python'da Yazılım Mühendisliği İlkeleri

PEP 8 İhlali

#verimizi tanımla
my_dict ={
    'a'  : 10,
'b': 3,
    'c'  :   4,
             'd': 7}
#gerekli paketi içe aktar
import numpy as np
#yardımcı fonksiyon
def DictToArray(d):
    """Sözlük değerlerini numpy dizisine dönüştür"""
    #değerleri çıkar ve dönüştür
              x=np.array(d.values())
              return x
print(DictToArray(my_dict))
array([10,  4,  3,  7])
Python'da Yazılım Mühendisliği İlkeleri

PEP 8'i Takip Etmek

# Gerekli paketi içe aktar
import numpy as np

# Verimizi tanımla
my_dict = {'a': 10, 'b': 3, 'c': 4, 'd': 7}


# Yardımcı fonksiyon
def dict_to_array(d):
    """Sözlük değerlerini numpy dizisine dönüştür"""
    # Değerleri çıkar ve dönüştür
    x = np.array(d.values())
    return x


print(dict_to_array(my_dict))
array([10,  4,  3,  7])
Python'da Yazılım Mühendisliği İlkeleri

PEP 8 Araçları

PEP 8 ile PyCharm

pycodestyle paketi

Python'da Yazılım Mühendisliği İlkeleri

pycodestyle Kullanımı

datacamp@server:~$ pip install pycodestyle
datacamp@server:~$ pycodestyle dict_to_array.py
dict_to_array.py:5:9: E203 ':' öncesinde boşluk
 dict_to_array.py:6:14: E131 devam satırı asılı girinti için hizalanmamış
 dict_to_array.py:8:1: E265 blok yorumu '#' ile başlamalı
 dict_to_array.py:9:1: E402 modül seviyesi içe aktarma dosyanın en üstünde değil
 dict_to_array.py:11:1: E302 2 boş satır bekleniyordu, 0 bulundu
 dict_to_array.py:13:15: E111 girinti dört katı değil
Python'da Yazılım Mühendisliği İlkeleri

pycodestyle Çıktısı

pycodestyle hata çıktısı

Python'da Yazılım Mühendisliği İlkeleri

Haydi Pratik Yapalım

Python'da Yazılım Mühendisliği İlkeleri

Preparing Video For Download...