اذهب إلى المحتوى
  • 0

File_dialog جلب قيمة من متغير

Ahmed Ahmed64

السؤال

السلام عليكم

لدي هذه الشفرة

    def File_dialog(self):
        self.filename = filedialog.askopenfilename(initialdir="C:\\Users\\Cakow\\PycharmProjects\\Main", title="Open file okay?", filetypes=(("text files", "*.xlsx"),("all files", "*.*")))
        return self.filename

حيث أن مسار الرابط يحفظ في self.filename

def PRINT_FILENAME(self):
        print(self.filename)

قمت بوضع الشفرة الأولى في زر

والشفرة الثانية في زر أخر

سؤالي الأن ////// عند الضغط على الزر الثاني سوف يحدث خطأ أكيد لأن لم يتم تخزين قيمة في self.filename

هل من طريقة أو تصحيح للتأكيد على اختيار الملف أولا حتى لا يحدث خطأ 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

Recommended Posts

  • 0

قم فقط بالتحقق من وجود قيمة في self.filename قبل طباعتها أو استخدامها. أي قبل قبل استدعاء الدالة PRINT_FILENAME. أو قم بتجاوز الدالة في نفسها لتسع هذا الاستخدام: 

def PRINT_FILENAME(self):
    if hasattr(self, 'filename') and self.filename:
        print(self.filename)
    else:
        print("لم يتم اختيار أي ملف بعد")
رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 27 دقائق مضت قال Adnane Kadri:

قم فقط بالتحقق من وجود قيمة في self.filename قبل طباعتها أو استخدامها. أي قبل قبل استدعاء الدالة PRINT_FILENAME. أو قم بتجاوز الدالة في نفسها لتسع هذا الاستخدام: 

def PRINT_FILENAME(self):
    if hasattr(self, 'filename') and self.filename:
        print(self.filename)
    else:
        print("لم يتم اختيار أي ملف بعد")

هل من الممكن أن تقوم الدالة باسترجاع قيمة أكثر من متغير واحد     ( return )

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 5 دقائق مضت قال Ahmed Ahmed64:

هل من الممكن أن تقوم الدالة باسترجاع قيمة أكثر من متغير واحد     ( return )

لا، ولكن يمكنك تخزين العديد من المتغيرات في قائمة وإعادة القائمة مباشرة. 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...