Pasar valor de una variable a otra en otro archivo
Publicado por Angel Alvarez (1 intervención) el 20/08/2018 22:18:48
Buenas tardes.
Tengo la viable user_name en el archivo es.py, y necesito que esa variable tome el valor que le indico en el archivo login.py
Login.py
y este el archivo es.py donde tengo la variable user_name
el problema es que no pasa el valor a la variable user_name y se queda en blanco
Tengo la viable user_name en el archivo es.py, y necesito que esa variable tome el valor que le indico en el archivo login.py
Login.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
from PyQt5.QtWidgets import QMainWindow, QApplication
from PyQt5 import uic, QtCore, Qt
from Inicio import Inicio
from Firebase_load import *
from Registro import Image
from add_users import Usuarios
from es import user_name ##### Esta es la variable user_name que importo desde el otro archivo y en la funcion def other() la aplico.
class Principal(QMainWindow):
def __init__(self):
QMainWindow.__init__(self)
uic.loadUi("Login.ui",self)
self._Inicio = Inicio()
self.registro = Image()
self.add = Usuarios()
self.setWindowFlags(QtCore.Qt.FramelessWindowHint)
self.setAttribute(QtCore.Qt.WA_TranslucentBackground,True)
self.setAttribute(QtCore.Qt.WA_NoSystemBackground,False)
self.closed.clicked.connect(lambda:self.close())
self.mostrar_hora()
self.timer = QtCore.QTimer(self)
self.timer.setInterval(1000)
self.timer.timeout.connect(self.mostrar_hora)
self.timer.start()
def mostrar_hora(self):
self.hora.setText(QtCore.QDateTime.currentDateTime().toString("hh:mm:ss AP"))
class Dato(Principal):
def __init__(self):
Principal.__init__(self)
self.b_login.clicked.connect(self.validate_User)
def validate_User(self):
user = self.l_usuario.text()
if user == '':
self.l_status.setText('No se ingreso un usuario')
else:
ref = db.reference("/usuarios/")
res = ref.get()
for key in res.items():
if key[0] == user:
self.validate_password(user)
def validate_password(self,user):
password = self.l_password.text()
refp = db.reference("/usuarios/"+user)
res = refp.get()
for key in res.items():
if key[0] == 'password':
if key[1] == password:
self.other()
self.l_status.setText("login")
pass
else:
self.l_password.setText('')
self.l_status.setText("Invalidate Password")
elif key[0] == 'permisos':
self.registro.acces = key[1]
self.add.acces = key[1]
def other(self):
user_name = self.l_usuario.text() ############ Este es el valor que deceo que tenga ahora la variable
self.close()
self._Inicio.user.setText(self.l_usuario.text())
self._Inicio.show()
def mousePressEvent(self,event):
if event.button() == QtCore.Qt.LeftButton:
self.dragPosition = event.globalPos() - self.frameGeometry().topLeft()
event.accept()
def mouseMoveEvent(self,event):
if event.buttons() == QtCore.Qt.LeftButton:
self.move(event.globalPos()-self.dragPosition)
event.accept()
app = QApplication([])
p = Dato()
p.show()
app.exec_()
y este el archivo es.py donde tengo la variable user_name
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
from docx import Document
from docx.shared import Inches, Pt
from docx.enum.text import WD_PARAGRAPH_ALIGNMENT
import time
import getpass
import os
user_name = '' " ##### Aqui declaro la variable como vacia
def imprimir_ticket(lista_items,totalt,cambiot,user_name1):
user = str(getpass.getuser())
time_one = str(time.strftime("%H%M%S"))
fecha_one = str(time.strftime("%d-%m-%Y"))
time_two = (str(time.strftime("%H:%M:%S")))
name = fecha_one + time_one
name2 = 'Feacha: ' + fecha_one + time_two
path = 'C:/Users/'+user+'/Desktop/Comprobantes'
res = 'C:/Users/'+user+'/Desktop/Comprobantes/'+name+'.docx'
t1 = '$ ' + str(totalt)
c1 = '$ ' + str(cambiot)
u = str(user_name)
doc = Document()
el problema es que no pasa el valor a la variable user_name y se queda en blanco
Valora esta pregunta


0