SORU
24 Aralık 2013, Salı


'Python `al x` sıralamak için doğru yol ne ve `x Alma y` ifadeleri?

python style guide bu gibi ithalat gruba önerir:

İthalat aşağıdaki sırayla gruplandırılmış:

  1. standart kütüphane alır
  2. ilgili üçüncü taraf alır
  3. yerel uygulama/kütüphane özel ithalat

Ancak, ithalatın iki farklı şekilde ortaya koydu nasıl olması gerektiğini hiç söz etmez:

from foo import bar
import foo

Onları sıralamak için birden fazla yol (şimdi tüm bu ithalat aynı gruba ait olduğunu varsayalım)

  • ilk from..import import

    from g import gg
    from x import xx
    import abc
    import def
    import x
    
  • ilk import from..import

    import abc
    import def
    import x
    from g import gg
    from x import xx
    
  • modülü tarafından alfabetik, ithalat tür görmezden adı

    import abc
    import def
    from g import gg
    import x
    from xx import xx
    

PEP8 bu tercih sırasını ve "temizlik ithalat" bazı IDEs muhtemelen bu özelliği geliştirici tercih yap sadece özellikleri. söz etmez

MORAL verici bu açıklama ya BDFL e-posta/ilgili bir yorum arıyorum(veya başka bir Python çekirdek geliştirici).Lütfen öznel cevaplar kendi tercihi belirten bir yazı yok.

CEVAP
24 Aralık 2013, Salı


İthalat genellikle alfabetik olarak sıralanmış ve KEP 8 yanında çeşitli yerlerde açıklanmıştır.

Alfabetik olarak sıralanmış modülleri okuma ve arama için daha hızlı. Tüm python sonra okunabilir. Ayrıca bir şey ithal ve çoğaltılamaz ithalat engeller olduğunu doğrulamak için daha kolaydır

PEP 8 sıralama ile ilgili bir şey vardır.Seçim hakkında ne kullanan çok.

Saygın sitelerden birkaç referanslar ve alanlarına göre de popülerlik, Alfabetik sıralama.

örneğin: bunun gibi

import httplib
import logging
import random
import StringIO
import time
import unittest
from nova.api import openstack
from nova.auth import users
from nova.endpoint import cloud

YA

import a_standard
import b_standard

import a_third_party
import b_third_party

from a_soc import f
from a_soc import g
from b_soc import d

Reddit, resmi depo da, genel Olarak sipariş alma PEP-8 kullanılması gerektiğini belirtir. Ancak bazı eklemeler var

for each imported group the order of imports should be:
import <package>.<module> style lines in alphabetical order
from <package>.<module> import <symbol> style in alphabetical order

Referanslar:

PS orada paket python modülleri için de alfabetik olarak alma. https://pypi.python.org/pypi/isort/2.6.2

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • MrMimoB

    MrMimoB

    11 NİSAN 2011
  • Sam Kear

    Sam Kear

    14 Temmuz 2007
  • Submissions101

    Submissions1

    23 ŞUBAT 2007