Re: [Linux-programlama] Python'da Global Değişkenler

---------

New Message Reply About this list Date view Thread view Subject view Author view Attachment view

From: Recai Oktas (roktas@omu.edu.tr)
Date: Wed 16 Mar 2005 - 09:42:59 EET


Merhaba,

* Volkan YAZICI [2005-03-15 21:08:27+0200]
> Saatlerdir çok basit bir sorun üzerinde takıldım kaldım. IRC'de sorduğum
> insanların biri bile soruma cevap vermek yerine, yok onun yerine şöyle
> yapsam da olurmuş şeklinde önerilerde bulundular. Artık takıntı haline
> geldi, aşağıdaki betik neden UnboundLocalError hatası verir.
>
> """ {{{ kahrolasıBetik """
> #!/usr/bin/python
>
> primeList = [2, 3]
> primeCount = len(primeList)

Bunlari global istiyorsun.

> def gimmiOneMorePrime():
> indice, lastPrimeIndice = 1, (primeCount - 1)

Ama burada primeCount yerel alinmis ve ilklendirilmeden kullanilmis.

> tempPrime = primeList[lastPrimeIndice] + 2
>
> while indice <= lastPrimeIndice:
> if tempPrime % primeList[indice] == 0:
> indice = 1
> tempPrime += 2
> else: indice += 1
>
> primeList.append(tempPrime)
> primeCount += 1

Cozum her iki islevde de:

    global primeList, primeCount

gibi birsey kullanmak. Global degisken kullanmayan bir cozum bulmani
oneririm. Gordugun gibi sorunlara yol aciyor.

-- 
roktas
_______________________________________________
Linux-programlama mailing list
Linux-programlama@liste.linux.org.tr
http://liste.linux.org.tr/mailman/listinfo/linux-programlama


New Message Reply About this list Date view Thread view Subject view Author view Attachment view

---------

Bu arsiv hypermail 2.1.2 tarafindan uretilmistir.