عزوز عزوز2 نشر 16 مايو 2022 أرسل تقرير نشر 16 مايو 2022 انا استخدمت مكتبة pandas لكن لما اجلب قيمة من excel في django يرجع none وفي بايثون يرجع النتيجة الموجودة في excel # هذا الكود الذي استخدمته df = pd.read_excel('.\excel\math.xlsx', sheet_name='ورقة1', usecols='A:D') num1 = df.loc[0]['number 1'] num2 = df.loc[0]['number 2'] sol = df.loc[0]['sol'] 1 اقتباس
0 شرف الدين حفني نشر 18 مايو 2022 أرسل تقرير نشر 18 مايو 2022 بتاريخ 55 دقائق مضت قال عزوز عزوز2: اخي اشرف الدين المشكلة هنا عند استدعاء قيمة sol لا يرجع لي القيمة الموجودة في excel انما يرجع nan او None ..... قيمة sol في الاكسيل هي الخلية C2 وقيمة هذه الخلية هو مجموع الخليتين A2 + B2 يعني لو كانت قيمة A2 = 2 وقيمة B2 = 3 ...ستكون قيمة الخلية C2 هو 5 هذه صورة ملف excel هذه صورة للصفحة التي تجلب القيم من excel تلك المشكلة تحدث بسبب أنك تحاول الحصول على قيمة الصف sol والذي هو في الاساس ليس قيمة وانما معادلة, لذا يجب حسابها قبل محاولة الاتيان بقيمتها, ولحساب معادلات الاكسيل برمجيًا يمكننا استخدام موديول formulas والذي يقوم اولا بتحميل الملف الاكسيل ومن ثم حساب معادلاته ومن ثم حفظه, والشفرة التالية مستوحاة من شفرتك بعد بعض التعديلات لتناسب استخدام الموديول import pandas as pd import openpyxl import formulas xl_model = formulas.ExcelModel().loads('./MATH.XLSX').finish() xl_model.calculate() xl_model.write(dirpath='./') wb = openpyxl.load_workbook('MATH.XLSX',data_only=True) sheet1 = wb['ورقة1'] print(sheet1.cell(column=3, row=2).value) df = pd.read_excel('MATH.XLSX', sheet_name='ورقة1', usecols='A:L') number1 = df.loc[0]['number 1'] print(number1) number2 = df.loc[0]['number 2'] sol = df.loc[0]['sol'] print(df.loc[0]) نلاحظ اننا نستخدم الملف بحروف كبيرة, وهذا لان الموديول formulas يقوم بحفظ الملف بحروف كبيرة, يُرجى استبدال المسارات الموضوعة في الشفرة بالمسارات الخاصة بملفاتك 1 اقتباس
0 مسعود زاهي نشر 16 مايو 2022 أرسل تقرير نشر 16 مايو 2022 مرحبا عزوز، لم تقم بالتوضيح في أي سطر يقع الخطأ. تحياتي. 1 اقتباس
0 عزوز عزوز2 نشر 16 مايو 2022 الكاتب أرسل تقرير نشر 16 مايو 2022 بتاريخ 2 ساعات قال مسعود زاهي: مرحبا عزوز، لم تقم بالتوضيح في أي سطر يقع الخطأ. تحياتي. في في هذا السطر ... هو لا يرجع خطأ انما لا يجلب لي قيمة تكون القيمة المرجعه nan ملاخظة يوجد معادلة موضعه على هذه الخانه sol = df.loc[0]['sol'] وفي هذه الاسطر يرجع لي النتيجة مثل ماهي في excel num1 = df.loc[0]['number 1'] num2 = df.loc[0]['number 2'] 1 اقتباس
0 مسعود زاهي نشر 17 مايو 2022 أرسل تقرير نشر 17 مايو 2022 مرحبا مجددا عزوز، بتاريخ 14 ساعات قال عزوز عزوز2: في في هذا السطر ... هو لا يرجع خطأ انما لا يجلب لي قيمة تكون القيمة المرجعه nan ملاخظة يوجد معادلة موضعه على هذه الخانه sol = df.loc[0]['sol'] وفي هذه الاسطر يرجع لي النتيجة مثل ماهي في excel num1 = df.loc[0]['number 1'] num2 = df.loc[0]['number 2'] هل يمكنك إرفاق شيفرة الدالة كاملة مع ملف excel الذي تستخدمه. تحياتي. اقتباس
0 عزوز عزوز2 نشر 17 مايو 2022 الكاتب أرسل تقرير نشر 17 مايو 2022 (معدل) بتاريخ 2 ساعات قال مسعود زاهي: مرحبا مجددا عزوز، هل يمكنك إرفاق شيفرة الدالة كاملة مع ملف excel الذي تستخدمه. تحياتي. هذه الشيفرة المستخدمه def index(request): wb = openpyxl.load_workbook(os.getcwd() + r'\excel\math.xlsx') sheet1 = wb['ورقة1'] num1 = request.POST.get('num1') num2 = request.POST.get('num2') # save data in excel sheet1.cell(column=1, row=2, value=num1) sheet1.cell(column=2, row=2, value=num2) wb.save(f'{os.getcwd()}/excel/math.xlsx') wb.close() # Reading from Excel and displaying it in the browser df = pd.read_excel('.\excel\math.xlsx', sheet_name='ورقة1', usecols='A:L') number1 = df.loc[0]['number 1'] number2 = df.loc[0]['number 2'] sol = df.loc[0]['sol'] context = {'num1': number1, 'num2': number2, 'sol': sol} return render(request, 'index.html', context) هذا ملف excel math.xlsx تم التعديل في 17 مايو 2022 بواسطة عزوز عزوز2 خطأ املائي اقتباس
0 شرف الدين حفني نشر 18 مايو 2022 أرسل تقرير نشر 18 مايو 2022 بتاريخ On 5/17/2022 at 12:51 قال عزوز عزوز2: هذه الشيفرة المستخدمه def index(request): wb = openpyxl.load_workbook(os.getcwd() + r'\excel\math.xlsx') sheet1 = wb['ورقة1'] num1 = request.POST.get('num1') num2 = request.POST.get('num2') # save data in excel sheet1.cell(column=1, row=2, value=num1) sheet1.cell(column=2, row=2, value=num2) wb.save(f'{os.getcwd()}/excel/math.xlsx') wb.close() # Reading from Excel and displaying it in the browser df = pd.read_excel('.\excel\math.xlsx', sheet_name='ورقة1', usecols='A:L') number1 = df.loc[0]['number 1'] number2 = df.loc[0]['number 2'] sol = df.loc[0]['sol'] context = {'num1': number1, 'num2': number2, 'sol': sol} return render(request, 'index.html', context) هذا ملف excel math.xlsx عزوز لم أفهمك جيدًا, هل مشكلتك انك تقوم بالتعديل في الملف لكن لا يتم حفظ التغييرات ام انا فهمتك بشكلٍ خاطئ؟ 1 اقتباس
0 عزوز عزوز2 نشر 18 مايو 2022 الكاتب أرسل تقرير نشر 18 مايو 2022 بتاريخ 1 ساعة قال شرف الدين2: عزوز لم أفهمك جيدًا, هل مشكلتك انك تقوم بالتعديل في الملف لكن لا يتم حفظ التغييرات ام انا فهمتك بشكلٍ خاطئ؟ اخي اشرف الدين المشكلة هنا عند استدعاء قيمة sol لا يرجع لي القيمة الموجودة في excel انما يرجع nan او None ..... قيمة sol في الاكسيل هي الخلية C2 وقيمة هذه الخلية هو مجموع الخليتين A2 + B2 يعني لو كانت قيمة A2 = 2 وقيمة B2 = 3 ...ستكون قيمة الخلية C2 هو 5 هذه صورة ملف excel هذه صورة للصفحة التي تجلب القيم من excel 1 اقتباس
السؤال
عزوز عزوز2
انا استخدمت مكتبة pandas لكن لما اجلب قيمة من excel في django يرجع none
وفي بايثون يرجع النتيجة الموجودة في excel
7 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.