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

  • Adam Khoury

    Adam Khoury

    23 Ocak 2008
  • Joseph Herscher

    Joseph Hersc

    14 Mart 2007
  • Snazzy Labs

    Snazzy Labs

    9 Aralık 2008