Python’da Değişken Türü Kontrolü
Projelerinizde bir değişkenin türünü kontrol edip işlemleri ona göre yaptırmak ya da farklı yerlerde değişken türünü öğrenmek isteyebilirsiniz. Bunun için Python'da types modülü işinizi görecektir.
Bu modülü kullanmak için aşağıdaki şekilde kodlarınıza dahil etmemiz yeterli.
from types import *
36 türü bu modül ile kontrol edebiliyorsunuz. Bunlarla ilgili bazı örnekler aşağıdadır.
NoneType
>>> a = None >>> if type(a) is NoneType: ... print "a nın değeri None olarak tanımlanmış" ... else: ... print "a nın değeri None olarak tanımlanmamış" ... a nın değeri None olarak tanımlanmış >>>
BooleanType
>>> a = True >>> if type(a) is BooleanType: ... print "a nın değeri True ya da False olarak tanımlanmış" ... else: ... print "a nın değeri True ya da False olarak tanımlanmamış" ... a nın değeri True ya da False olarak tanımlanmış >>>
IntType
>>> a = 11 >>> if type(a) is IntType: ... print "a değişkeni sayısal bir veri barındırmaktadır" ... else: ... print "a değişkeni sayısal bir veri barındırmamaktadır" ... a değişkeni sayısal bir veri barındırmaktadır
Tabi yukarıdaki şekilde kullanmak yerine aşağıdaki iki fonksiyonla işlerinizi kolaylaştırabilirsiniz.
#-*- coding: utf-8 *-* from types import * def kontrol(veri,tur): if type(veri) is tur: return True else: return False a = "merhaba" print kontrol(a,StringType) print kontrol(a,IntType) import types def tur_ogren(veri): turler = dir(types)[:-4] for i in turler: if type(veri) is eval(i): return i a = "123" print tur_ogren(a) a = 123 print tur_ogren(a)
Tags: python
May 22nd, 2008 at 9:21 pm
Bu modülü direk olarak bir uygulama içerisinde kullanır mıyım bilemem. Yazdığım bazı uygulamalarda kod satırı arttıkça yaptığım tür atamaları ve bunlara bağlı işlemlerde hata çıktığı oluyor. Bu durumda hata kontrolü ve çözümü için bu modülü kesinlikle kullanırım. Bilgi ve örnekler için teşekkürler.
May 22nd, 2008 at 9:32 pm
Rica ederim, kolay gelsin.