Reputation: 492
How to import files from another folder, try so many things, but my attempt is not fruitful. How to resolve it?
-> d:
-> project Main
-> First Folder
-> my_main_file.py
-> class (My_Main_Class)
-> module1
-> module2
-> module3
-> Second Folder
-> my_second_file.py
How to import module1 and module 3 from my first file(my_main_file.py) into my _second_file.py
My_main_file This is my main file('d:/project_main/main folder'). now I want to import modules "establish_connection_general and other things to my second file. ( d:/project_main/second_folder)
from PyQt5.QtWidgets import QWidget,QMessageBox,QApplication
from PyQt5.QtGui import QIcon
import sqleet
import os
import sys
print("1234567890aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa")
file_path_general = r"d:\project makeeasy\assist"
db_name_general = (os.path.join(file_path_general,'makeeasy_general.me'))
passkey_general = "1234"
new_passkey_general = "1234"
show_errormsg = "show"
class Database_connection(QWidget):
def __init__(self):
super(). __init__()
self.establish_connection_general()
# self.cahnge_passkey()
def establish_connection_general(self):
try:
connection_general = sqleet.connect(db_name_general,key = passkey_general)
print("open scueffully")
except Exception as e:
if show_errormsg == "show":
self.handle_error(e)
else:
pass
def cahnge_passkey(self):
try:
general_connection = sqleet.connect(db_name_general,key = passkey_general)
general_connection.change_key(new_passkey_general)
print("new pass key sucessfully changed")
general_connection.close()
except Exception as e:
if show_errormsg == "show":
self.handle_error(e)
else:
pass
def handle_error(self,error):
exc_type, exc_value, exc_traceback = sys.exc_info()
filenamewithpath = exc_traceback.tb_frame.f_code.co_filename
head,tail = os.path.split((filenamewithpath))
lineno = exc_traceback.tb_lineno
name = exc_traceback.tb_frame.f_code.co_name
type = exc_type.__name__
message = exc_value
nl = '\n'
kk = f'File Name : {tail[:-3]}{nl}'\
f'Line No. : {lineno}{nl}'\
f'Type : {type}{nl}'\
f'Name : {name}{nl}'
self.msg = QMessageBox()
self.msg.setFixedSize(1600,400)
self.msg.setWindowTitle(" Error/Bugs Information")
self.msg.setWindowIcon(QIcon('icon\close006.png'))
fd = " "
self.msg.setText(f'{type} - {lineno}{fd}')
self.msg.setIcon(QMessageBox.Information)
self.msg.setStandardButtons(QMessageBox.Ok)
self.msg.setDefaultButton(QMessageBox.Ok)
self.msg.setInformativeText("")
self.msg.setDetailedText(kk)
self.msg.show()
def main():
app = QApplication(sys.argv)
ex = Database_connection()
app.setStyle("Fusion")
sys.exit(app.exec_())
if __name__ == '__main__':
main()
Upvotes: 2
Views: 1090
Reputation: 371
in my_second_file.py
from First_Folder.my_main_file import My_Main_Class
After Your comment:
from First_Folder.my_main_file import ex(your class object)
In your second file
ex.module1()
ex.module3()
Upvotes: 3