إعـــــــلان

تقليص
لا يوجد إعلان حتى الآن.

Clp

تقليص
X
 
  • تصفية - فلترة
  • الوقت
  • عرض
إلغاء تحديد الكل
مشاركات جديدة

  • Clp

    النهاردة على الفجر كنت بكتب برنامج كدا فالمهم.. اكتشفت قد إيه انا بكره getopt و optparse مش لصعوبة او كدا.. لكن شايف انهم ممكن يكونو اشيك شوية ^_^

    فكتبت Command Line Arguments Parser
    اها بالمناسبة: انا لاحظت ان فى ناس بتستخدم لغات زى سى وبيرل لمجرد انها تقدم مجرد menu driven program وكل الشغل بيبقة من خلال استخدام حاجة زى system وهكذا.. فمن الآخر shame on you .. اتعلم shell scripting احسن :gotcha:


    نيجى لكيفية الإستخدام

    فى ال Module موجود test code كالتالى
    كود:
    if __name__=="__main__":
        s="print -name ahmed -gender male -age 19 -sleeping --file 1.txt -dreaming"
        parser=CommandLineParser(s.split(), boolopts=["-sleeping", "-dreaming"])
        print "Passed options: ", parser.getpassedoptions()
        print "Name: ", parser.getvalueof("-name")
        print "Gender: ", parser.getvalueof("-gender")
        print "Age: ", parser.getvalueof("-age")
        print "File: ", parser.getvalueof("--file")
        try:
            print "SITE: ", parser.getvalueof("-site")
        except OptionNotFoundException, e:
            print "Exception: ", e
        print "Sleeping? ", parser.ispassed("-sleeping")
        print "Dreaming? ", parser.ispassed("-dreaming")
    اولا وليكن دا ال argS string اللى هيتباصى فى البرنامج
    كود:
    "print -name ahmed -gender male -age 19 -sleeping --file
    فالأول هتعمل object من ال CommandLineParser كالتالى
    كود:
    parser=CommandLineParser(s.split(), boolopts=["-sleeping", "-dreaming"])
    لاحظ ان اول arg هى ال List اللى فيها ال args "عملية split بسيطة"
    تانى شئ هو boolopts وهى ال options اللى مش هتاخد قيم ولكن هتبقة عبارة عن bool زى مثلا verbose وكدا .. فهنا انا محدد انها -sleeping, -dreaming

    فى method فى ال parser بإسم getpassedoptions بتعرض كل ال options اللى اتباصت
    فى method فى ال parser بإسم getvalueof وهى بتاخد param 1 وبتعيد قيمة ال option ليك
    وإذا ال option مش موجود اساسا فى ال args اللى اتباصيت هيتعمل raise ل OptionNotFoundException

    ولإختبار هل option معين اتباصى او لأ.. استخدم ispassed

    ال output:
    Passed options: ['-gender', '-name', '-sleeping', '--file', '-age', '-dreaming']
    Name: ahmed
    Gender: male
    Age: 19
    File: 1.txt
    Site: Exception: No Such an Option
    Sleeping? True
    Dreaming? True
    احتمال ادعمها بلغات تانية -حسب الوقت وعدد اللى مش بيحبو getopts, optparse
    الملفات المرفقة
    Programming-Fr34ks[dot]NET
    Ma Weblog
    ابدأ بتعلم Python | Ruby
    كتاب البايثون متوافر الآن
    لا اتواجد بهذا المنتدى ... للإتصال

  • #2
    اكتشفت قد إيه انا بكره getopt و optparse مش لصعوبة او كدا.. لكن شايف انهم ممكن يكونو اشيك شوية ^_^
    spoiled programmers
    قال مش عاجبه getopt و getopt_long
    SPOILEDDDDDDDDDDD PROGRAMMMERSSS

    اها بالمناسبة: انا لاحظت ان فى ناس بتستخدم لغات زى سى وبيرل لمجرد انها تقدم مجرد menu driven program وكل الشغل بيبقة من خلال استخدام حاجة زى system وهكذا
    انت وصلت
    مش قلتلك التنوير الداخلي بينفع هههههههههههههههههههه


    nice touch بجد جميل
    خاصة ال methods الجديده الي انت حاتطها
    c ya :D
    BOOOF , I AM GONE
    Still , you gotta wait for my PRESENT :D
    C programming arabic Tutorial|Programming-fr34ks

    تعليق


    • #3
      ال spoiled ال
      يابنى ان الكود يكون منظم دا رقم 1 بالنسبة لأى حد.. مانت عارف شيل ال indentations وشيل ال newlines مع اللغات ال free coding وهتبقة شايف مهرجان الألفية التاسعة فى وشك

      اها قارن صحيح بين دى وبين ال getopt بتاعتك هتلاقيها فى ال بيثون بنفس شبه ال implementation بتاعت ال C

      على كل حال الModule دى انا بنصح بيها ^_^
      مش قلتلك التنوير الداخلي بينفع هههههههههههههههههههه
      الدلاى لاما بيكلمك

      نورت يافتى :P
      Programming-Fr34ks[dot]NET
      Ma Weblog
      ابدأ بتعلم Python | Ruby
      كتاب البايثون متوافر الآن
      لا اتواجد بهذا المنتدى ... للإتصال

      تعليق


      • #4
        قصدك كده :
        كود PHP:
        #include<stdio.h> int main(void){ printf("HELLO SPLOIED\n");} 
        getopt بتاعتك هتلاقيها فى ال بيثون بنفس شبه ال implementation بتاعت ال C
        امال بتتريق علي بتاعت ال c ليه طالما شبها
        BOOOF , I AM GONE
        Still , you gotta wait for my PRESENT :D
        C programming arabic Tutorial|Programming-fr34ks

        تعليق


        • #5
          #include<stdio.h> int main(void){ printf("HELLO SPLOIED\n");}
          ههههههههههههههههههههههههههههههههههههه ايوة

          ادى مثال على getopt بالسى والبيثون
          http://www.gnu.org/software/libtool/...mple-of-Getopt
          http://docs.python.org/lib/module-getopt.html

          وشوف المثال تبع ال CommandLineParser وتعالى اتكلم

          ضلمت يابنى ^_^
          Programming-Fr34ks[dot]NET
          Ma Weblog
          ابدأ بتعلم Python | Ruby
          كتاب البايثون متوافر الآن
          لا اتواجد بهذا المنتدى ... للإتصال

          تعليق


          • #6
            حلو قوى النقاش اللى بينكم ده يا شباب
            عقدتونى .... ههههههههههههههههههههههههه
            تحياتى يا نجوم
            BŁλĐΣ

            تعليق

            يعمل...
            X