Farz edelim Önceden belirlenmiş belirli aralıklarda rastgele seçilmiş değerlere sahip 4-tuple döndüren generator
isimli bir işlev var. Diyelim ki böyle tanımlarla 20 farklı işlevleri tanımladıktan diyelim Öte yandanPython'daki işlev parametrelerini eşleştirme
age is in range(5, 85)
sex is a member of the set {"m", "f"}
location is a member of the set of all the cities in California
marital_status is a member of {"married", "single", "separated"}
: en tanımlama grubu formunda (age, sex, location, marital_status)
ait diyelim p1
parametreleri alması gerekirken
def p1 (age, sex, location, marital_status)
def p2 (age, sex, location, marital_status)
.
.
aşağıdaki formu değerleri: tüm yol 0 p2
için
`age` must be in the range 20 to 45
`sex` must be male
`location` could be any city in Southern California
`marital_status` could be either single or married
ve değerlerin farklı bir dizi hayal.
Oluşturulan hangi değerler kümesinin hangi işlevle eşleştiğini belirlemenin pragmatik bir yolu nedir?
tüm tanımları tam olarak aynı Bu durumdaama age
ve location
olanakları aralığında belirli sınırlamalarla birlikte def p1 (age, location)
olabilir örneğin p18
için tanımlarında ufak farklar olabilir örneklerini tahmin edebilirsiniz.
P.S. Patterler mutlaka karşılıklı olarak münhasır değildir, yani bir dizi üretilen değer, aynı zamanda birden fazla fonksiyonla eşleşebilir.
Eğer Python 3 olduğundan, * Fonksiyon ek açıklamalar * gitmek için bir yol olabilir. – cdarke
Kalıplar birbirini dışlıyor mu yoksa daha fazla desen eşleşmesi mümkün mü? – dlask
@dlask: İyi nokta. Modelin birden fazla fonksiyonla eşleşmesi küçük bir olasılıktır. –