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

أسماء فؤاد

الأعضاء
  • المساهمات

    5
  • تاريخ الانضمام

  • تاريخ آخر زيارة

أجوبة بواسطة أسماء فؤاد

  1. جزيل شكري ..

    بالنسبة للسؤال الثاني 

    بتاريخ 5 ساعات قال Amjad Alsharafi:

    f = open(file, encoding='utf-8').readlines()l

    # ^^^^^^^

    # .يجب تحديد طريقة التشفير التي يجب قراءة الملف بها

    # . من الممكن أن يتم قراءة الملف بشك خاطئ اذا تم استعمال التشفير التلقائي

    لما غيرت السطر إلى المذكور ظهر لي هذا الخطأ التالي :
    TypeError: 'encoding' is an invalid keyword argument for this function

     

    او انه خاص بنسخة البايثون٣ ؟

     

  2. مرحبا ..

    اذا كتبت ملف numbers بحروف عربية و صدرته إلى csv تتحول البيانات تلقائياً في الأخير إلى حروف انجليزية ( لغة النظام انجليزية)

    و العكس  اذا كتبته بالانجليزية تتحول البيانات تلقائياً في csv إلى حروف عربية ( لغة النظام عربية)

    يعني تتحول إلى لغة النظام تلقائياً

    أريدها أن تبقى بنفس اللغة المكتوب بها بغض النظر عن لغة النظام

    أي حلول ..

  3. اشكر لك ردك .. جداً amjad alsharafi

    فعلاً هو بسبب حفظ الملف باتجاه الكتابة من اليمين لليسار

    بتاريخ On 8/20/2018 at 19:43 قال Amjad Alsharafi:

    اذا كانت المشكلة بسبب لوحة المفاتيح: تستطيع عمل فلتر داخل البرنامج اذا كان هذا لا يؤثر على إتجاه النص.

    اذا ممكن تشرح لي هذا الجزء، فضلاً..

    كيف اعمل فلتر ؟

    النص الموجود بداخل الملف:

    ١!٢!٣

    ٢!٣!٤

    ٣!٤!٥

    آو ارقام انجليزية محفوظة باتجاه من اليمين لليسار 

    عملتها بهذا الشكل:

    def parse (file,x=";",y="#"):
        f = open(file).readlines()
        result = []
        for line in f:
            if line[0] == y:
                continue
            else:
                line = line.strip()
                line = line.split(x)
                temp = []
                for element in line:
                    element = element.replace("\xe2\x80\xaa", "")
                    element = element.replace("\xe2\x80\xac", "")
                    element = element.replace("\xe2\x80\xab", "")
                    if "\xd9" in element:
                        temp.append(arabic_num(element))
                    else:
                        temp.append(element)
                result.append(temp)
        return result
    
    
    
    print parse('file.txt', '!', '#'),"\n"

    هل تقصد شيء آخر؟ اوحل آخر

    ليس لدي الكثير من المعرفة حتى الآن

     

     

    سؤال متعلق .. 

     

    إذا عملت 

    def parse_1 (file,x=";",y="#"):
        f = open(file).readlines()
        for line in f:
            print "\n",line #string
            line = line.strip()
            line = line.split(x)
            print line #list
            for element in line:
                print(element)

    تكون النتيجة

    ١!٢!٣
    
    ['\xd9\xa1\xe2\x80\xab', '\xe2\x80\xac\xd9\xa2\xe2\x80\xab', '\xe2\x80\xac\xd9\xa3']
    ١‫
    ‬٢‫
    ‬٣
    
    ٢!٣!٤
    
    ['\xd9\xa2\xe2\x80\xab', '\xe2\x80\xac\xd9\xa3\xe2\x80\xab', '\xe2\x80\xac\xd9\xa4']
    ٢‫
    ‬٣‫
    ‬٤
    
    ٣!٤!٥
    
    ['\xd9\xa3\xe2\x80\xab', '\xe2\x80\xac\xd9\xa4\xe2\x80\xab', '\xe2\x80\xac\xd9\xa5']
    ٣‫
    ‬٤‫
    ‬٥

    بمعنى انه من الممكن ان يطبع الارقام العربية او باتجاه من اليمين الا اذا دخلت في list هنا تحدث المشكلة

    أي تفسير ؟ أو حل ؟

     

    جزيت عني الجنة ..

  4. بتاريخ On ١٥‏/٨‏/٢٠١٨ at 09:42 قال أسماء فؤاد:

    اذا كتبت ملف ال txt  يدوياً و حفظته تطلع النتيجة بالشكل دا

    l ['1\xe2\x80\xaa', '\xe2\x80\xac2\xe2\x80\xaa', '\xe2\x80\xac3'] l

    هذا سؤالي اعذرني ما فهمتك 

    ليش تطلع نتيجة ال run بهذا الشكل عند كتابة الملف يدوياً وحفظه بينما تظهر ['1', '2', '3'] اذا نسخت بيانات الملف و الصقتها و حفظت الملف؟؟

    مالمشكلة و كيف احلها ؟

  5. مرحبا ..

    سؤال من مرحلة ابتدائية :)

    لما اكتب كود بلغة البايثون ع اساس انه يقرأ من ملف txt : و هذا جزء من النص اللي فيه المشكلة :1‪!‬2‪!‬3

    اذا نسخت النص و لصقته في ملف txt و حفظته و عملت run تطلع نتيجة ال run طبيعية ['1', '2', '3']

    لكن اذا كتبت ملف ال txt  يدوياً و حفظته تطلع النتيجة بالشكل دا

    l ['1\xe2\x80\xaa', '\xe2\x80\xac2\xe2\x80\xaa', '\xe2\x80\xac3'] l

    للارقام فقط ، أما الحروف تطلع عادية ['a', 'b', 'c'] للنص a!b!c

    اذا عملت print "\xe2\x80\xac".decode("utf-8")l تطلع النتيجة ع انها سطر او مسافة ،نفس الشي ل \xe2\x80\xaa

     اللاب توب :ماك 

    البيئة : pycharm

    النسخة : ٢.٧  الموجود ع الماك 

     

     

    لكم الشكر مسبقاً ..

     

×
×
  • أضف...