🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.python
Article #27819

[jak zdefiniować zmienną globalną]

#27819
From: Nateysz
Date: Wed, 24 Nov 2010 22:31
65 lines
2882 bytes
Wiem, wiem - to pewnie banalne, ale nie mogę znaleźć rozwiązania.
Otóż chcę mieć możliwość wywołania z jednego skryptu Pythona innego 
(wszystko działa pod ArcGIS-em).
Wygląda to tak, jak wartość zmiennej komunikat była czyszczona...
Skrypty wyglądają tak:

=================================================================
# Import system modules
import sys, string, os, arcgisscripting

# Create the Geoprocessor object
gp = arcgisscripting.create()
global komunikat
komunikat="wszystko wporzo"

# Load required toolboxes...
gp.AddToolbox("C:/Dokumenty i ustawienia/UserX/Dane 
aplikacji/ESRI/ArcToolbox/My Toolboxes/Toolbox.tbx")


# Process: moj_wlasny...
gp.toolbox = "C:/Dokumenty i ustawienia/UserX/Dane 
aplikacji/ESRI/ArcToolbox/My Toolboxes/Toolbox.tbx"
gp.Moj_wlasny()
===================================================


======================================Moj_wlasny===============
from Tkinter import *
# Import system modules
import sys, string, os, arcgisscripting

# Create the Geoprocessor object
gp = arcgisscripting.create()
#definicja klasy
class App:
     #w konstruktorze umieszczamy ramkę i przycisk
     def __init__(self, master):
         ramka=Frame(master)
         ramka.master.title("Tytul ramki")
         ramka.pack(padx=70, pady=5)

         #przycisk z poleceniem
         self.przycisk=Button(ramka, text="Polecenie", 
font=("arial",20,"bold"),command=self.wykonaj)
         self.przycisk.pack()

         #

         #przycisk zamykający
         self.przycisk2=Button(master, text="Koniec", command=root.destroy)
         self.przycisk2.pack(side=BOTTOM)

     #zdefiniowanie odpowiedzi
     def wykonaj(self):
         gp.AddMessage(komunikat)
         print komunikat

#tworzenie okna głównego
root=Tk()
#tworzenie obiektu
app=App(root)
#pętla powodująca wyświetlanie okienka
root.mainloop()
=========================================================
Technical Details
Message-ID: <4ced9255$0$22814$65785112@news.neostrada.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!news.nask.pl!news.nask.org.pl!newsfeed2.atman.pl!newsfeed.atman.pl!newsfeed.neostrada.pl!unt-exc-02.news.neostrada.pl!unt-spo-b-01.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!news.nask.pl!news.nask.org.pl!newsfeed2.atman.pl!newsfeed.atman.pl!newsfeed.neostrada.pl!unt-exc-02.news.neostrada.pl!unt-spo-b-01.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail
Date: Wed, 24 Nov 2010 23:31:49 +0100
From: Nateysz <43t4@vbr.pl>
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.1.15) Gecko/20101027 Thunderbird/3.0.10
MIME-Version: 1.0
Newsgroups: pl.comp.lang.python
Subject: [jak zdefiniować zmienną globalną]
Lines: 66
Message-ID: <4ced9255$0$22814$65785112@news.neostrada.pl>
Organization: Telekomunikacja Polska
NNTP-Posting-Host: 83.24.34.141
X-Trace: 1290637909 unt-rea-b-01.news.neostrada.pl 22814 83.24.34.141:60460
X-Complaints-To: abuse@news.neostrada.pl
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit