Доступ к глобальной переменной из класса Thread в Python - PullRequest
0 голосов
/ 09 июля 2019

Я сделал графический интерфейс в PyQt5 с концепцией Threading.Теперь я пытаюсь получить доступ к глобальным переменным. Который доступен между классами, но недоступен для функции, которая определена вне класса.

class Window(QtWidgets.QMainWindow, doby_v1_ui.Ui_MainWindow):
def __init__(self, parent=None):
     def load_design_image(self):
          global LOADED_IMAGE
          global LOADED_FILENAME
          global LOADED_FILEOBJECT
          global COMMUNICATION
          sourcefolder = "C:/Users/DELL/Desktop/design/"
          if(self.list_internal_change_images.currentRow() != -1):
               loaded_image = 
               self.list_internal_change_images.currentItem().text()
               LOADED_IMAGE = sourcefolder + loaded_image
               LOADED_FILEOBJECT = open(LOADED_FILENAME,'wb')
               pickle.dump(LOADED_IMAGE,LOADED_FILEOBJECT)
               LOADED_FILEOBJECT.close()
               COMMUNICATION = 1
               self.display_main_page()
          else:
              QMessageBox.about(self, 'Error', 'No image selected.')

Теперь я определил функцию вне класса

def DataInList():
     global LOADED_IMAGE
     print(LOADED_IMAGE)

и я использую эту функцию в файле API фляги, код API указан ниже

@app.route('/data',methods=["GET"])
def dataGet():
    DataInList()

Я не могу получить доступ к переменной или могу сказать, что она возвращает значение по умолчанию.с другой стороны, я попытался установить связь между родительским и дочерним объектами концепции MultiProcessing, но с тем же результатом.

Я пытался использовать отдельный файл для объявления глобальной переменной и доступа к ней.но появляется нулевое значение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...