SORU
30 AĞUSTOS 2008, CUMARTESİ


C-gibi yapılar Python

Bir şekilde rahat Python C-gibi bir yapı tanımlamak için var mı? Gibi şeyler yazmaktan bıktım:

class MyStruct():
    def __init__(self, field1, field2, field3):
        self.field1 = field1
        self.field2 = field2
        self.field3 = field3

CEVAP
30 AĞUSTOS 2008, CUMARTESİ


Python 2.6 standart collections module eklenen named tuple, bir kütüphane kullanın. Aynı zamanda Raymond eğer Python 2.4 desteğe ihtiyacınız varsa named tuple tarifi Hettinger kullanın.

Temel örneğin güzel bir şey, ama aynı zamanda daha sonra da aday olabileceğini kenar durumlarda bir sürü kapsar. Fragmanın yukarıdaki gibi yazılı olabilir:

from collections import namedtuple
MyStruct = namedtuple("MyStruct", "field1 field2 field3")

Yeni oluşturulan bu tür gibi kullanılabilir:

m = MyStruct("foo", "bar", "baz")

Veya adlandırılmış bağımsız değişkenleri kullanabilirsiniz:

m = MyStruct(field1 = "foo", field2 = "bar", field3 = "baz")

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Jared Busch

    Jared Busch

    25 Mayıs 2011
  • Le Cargo !

    Le Cargo !

    24 HAZİRAN 2007
  • Makeup Lover

    Makeup Lover

    12 HAZİRAN 2011