דילוג לתוכן
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום
כיווץ
תחומים

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תכנות
  3. עזרה | בניית תוכנת חיפוש בPYTHON

עזרה | בניית תוכנת חיפוש בPYTHON

מתוזמן נעוץ נעול הועבר תכנות
34 פוסטים 7 כותבים 882 צפיות
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • yossizY מנותק
    yossizY מנותק
    yossiz
    השיב לרחמים ב נערך לאחרונה על ידי
    #3

    @רחמים בפייתון קיים טייפ יותר מתאים למיפוי ערך לערך, ויקרא שמו בישראל dict.

    📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

    dovidD רחמיםר 2 תגובות תגובה אחרונה
    7
    • dovidD מנותק
      dovidD מנותק
      dovid ניהול
      השיב לyossiz ב נערך לאחרונה על ידי dovid
      #4

      הנה קוד כמו ש@yossiz ענה:

      names = {
        "רבא": "rava.txt",
        "אביי": "abye.txt",
        "שמואל": "shmuel.txt"
      }
       
      chosen = names.get(input, None)
      if chosen is not None: 
          print(chosen)
      else:
          print("שם לא קיים במערכת")
       
      
      

      סתם שאלה, הקוד שכתבת תקני?
      אפשר לכתוב print ללא סוגריים?

      מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

      בכל נושא אפשר ליצור קשר dovid@tchumim.com

      yossizY A L 3 תגובות תגובה אחרונה
      2
      • yossizY מנותק
        yossizY מנותק
        yossiz
        השיב לdovid ב נערך לאחרונה על ידי
        #5

        @dovid אמר בעזרה | בניית תוכנת חיפוש בPYTHON:

        אפשר לכתוב print ללא סוגריים?

        בפייתון 2 - כן, בפייתון 3 - לא.

        📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

        תגובה 1 תגובה אחרונה
        1
        • רחמיםר מנותק
          רחמיםר מנותק
          רחמים מורחק
          השיב לyossiz ב נערך לאחרונה על ידי
          #6

          @yossiz אה"נ, אבל דיקט מן הסתם עובד על טבלת גיבוב ולעומת זאת במערכים אפשר למיין ואז לעשות חיפוש בינארי שהוא פעמים יותר מהיר וראה כאן.

          yossizY תגובה 1 תגובה אחרונה
          2
          • A מנותק
            A מנותק
            aaron
            השיב לdovid ב נערך לאחרונה על ידי
            #7

            @dovid אמר בעזרה | בניית תוכנת חיפוש בPYTHON:

            הנה קוד כמו ש@yossiz ענה:

            names = {
              "רבא": "rava.txt",
              "אביי": "abye.txt",
              "שמואל": "shmuel.txt"
            }
             
            chosen = names.get(input, None)
            if chosen is not None: 
                print(chosen)
            else:
                print("שם לא קיים במערכת")
             
            
            

            סתם שאלה, הקוד שכתבת תקני?
            אפשר לכתוב print ללא סוגריים?

            סתם לשם החפירה, הייתי משנה קצת:
            (כי בדיוק פה הכח של פייתון מבחינתי. בנראות וקריאות..)

            names = {
              "רבא": "rava.txt",
              "אביי": "abye.txt",
              "שמואל": "shmuel.txt"
            }
            
            if names.get(input):
                print(names[input])
            else:
                print("שם לא קיים במערכת")
            

            או יותר קצר:

            print(names.get(input, "שם לא קיים במערכת")) 
            
            

            אני בוחר להשתמש בprint(names[input]) ולא בprint(names.get(input)) כי לדעתי זאת דרך נכונה לתת לפיתון להקפיץ שגיאות בעצמה ולא לנסות לנהל אותם לבד. זה מקל בד"כ על דיבאג..

            aaron.tchumim@gmail.com
            Hetzner - שרתים וירטואליים ופיזיים במחירים מעולים (קישור שותפים)

            ווצאפ API - תיעוד שירות API לא רשמי.

            רחמיםר תגובה 1 תגובה אחרונה
            3
            • yossizY מנותק
              yossizY מנותק
              yossiz
              השיב לרחמים ב נערך לאחרונה על ידי yossiz
              #8

              @רחמים אוקיי, אני שומע, תירוץ מלומד... אבל בקוד הדוגמה שלך המערך לא ממויין ובכל מקרה הפונקציה index עובר על כל המערך עד הערך הרצוי...
              (גם מילת המפתח: פעמים שהוא יותר מהיר... זה תלוי בכמה משתנים)

              📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

              תגובה 1 תגובה אחרונה
              5
              • רחמיםר מנותק
                רחמיםר מנותק
                רחמים מורחק
                השיב לaaron ב נערך לאחרונה על ידי רחמים
                #9

                @aaron אמר בעזרה | בניית תוכנת חיפוש בPYTHON:

                if names.get(input):
                print(names[input])

                זה יעשה את החיפוש פעמים לשווה

                תגובה 1 תגובה אחרונה
                0
                • L מנותק
                  L מנותק
                  LindoorsOS
                  השיב לdovid ב נערך לאחרונה על ידי
                  #10

                  @dovid אמר בעזרה | בניית תוכנת חיפוש בPYTHON:

                  הנה קוד כמו ש@yossiz ענה:

                  names = {
                    "רבא": "rava.txt",
                    "אביי": "abye.txt",
                    "שמואל": "shmuel.txt"
                  }
                   
                  chosen = names.get(input, None)
                  if chosen is not None: 
                      print(chosen)
                  else:
                      print("שם לא קיים במערכת")
                   
                  
                  

                  סתם שאלה, הקוד שכתבת תקני?
                  אפשר לכתוב print ללא סוגריים?

                  אני כתבתי ככה כמה פעמים

                  רחמיםר תגובה 1 תגובה אחרונה
                  0
                  • רחמיםר מנותק
                    רחמיםר מנותק
                    רחמים מורחק
                    השיב לLindoorsOS ב נערך לאחרונה על ידי
                    #11

                    @lindoorsos כמו שחשבתי dict הוא למעשה טבלת גיבוב, ראה כאן.

                    dovidD תגובה 1 תגובה אחרונה
                    -1
                    • dovidD מנותק
                      dovidD מנותק
                      dovid ניהול
                      השיב לרחמים ב נערך לאחרונה על ידי
                      #12

                      @רחמים אמר בעזרה | בניית תוכנת חיפוש בPYTHON:

                      @lindoorsos כמו שחשבתי dict הוא למעשה טבלת גיבוב, ראה כאן.

                      כפי שנרמז זה מאוד מאוד לא רלוונטי לנושא ולשואל.

                      מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

                      בכל נושא אפשר ליצור קשר dovid@tchumim.com

                      תגובה 1 תגובה אחרונה
                      0
                      • L מנותק
                        L מנותק
                        LindoorsOS
                        כתב ב נערך לאחרונה על ידי
                        #13

                        ברור לי שאני מפשל במשהו.כבר הרבה זמן לא ישבתי על פייתון, ואני די מתחיל בנושא...
                        אז ברור שאני עושה טעות שטותית, אבל אני לא מצליח למצוא אותה
                        מה התקלה כאן?

                        names = raw_input ('enter name')
                        names = {
                          "רבא": "rava.txt",
                          "אביי": "abye.txt",
                          "שמואל": "shmuel.txt"
                        }
                         
                        chosen = names.get(input, None)
                        if chosen is not None: 
                            print(chosen)
                        else:
                            print("שם לא קיים במערכת")
                         
                        
                        yossizY תגובה 1 תגובה אחרונה
                        0
                        • yossizY מנותק
                          yossizY מנותק
                          yossiz
                          השיב לLindoorsOS ב נערך לאחרונה על ידי
                          #14

                          @lindoorsos אתה מקבל שגיאה? תדביק פה את הפלט

                          📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

                          L 2 תגובות תגובה אחרונה
                          0
                          • L מנותק
                            L מנותק
                            LindoorsOS
                            השיב לyossiz ב נערך לאחרונה על ידי
                            #15

                            @yossiz

                            Traceback (most recent call last):
                              File "C:\Users\user\Downloads\Portable Python-3.8.6 x64\App\PyScripter\module2.py", line 27, in <module>
                                main()
                              File "C:\Users\user\Downloads\Portable Python-3.8.6 x64\App\PyScripter\module2.py", line 13, in main
                                names = raw_input ('enter name')
                            NameError: name 'raw_input' is not defined
                            
                            yossizY תגובה 1 תגובה אחרונה
                            0
                            • L מנותק
                              L מנותק
                              LindoorsOS
                              השיב לyossiz ב נערך לאחרונה על ידי
                              #16

                              @yossiz זה הקוד המלא שכתבתי

                              def main():
                                  names = raw_input ('enter name')
                              names = {
                                "רבא": "rava.txt",
                                "אביי": "abye.txt",
                                "שמואל": "shmuel.txt"
                              }
                              
                              chosen = names.get(input, None)
                              if chosen is not None:
                                  print(chosen)
                              else:
                                  print("שם לא קיים במערכת")
                              
                              if __name__ == '__main__':
                                  main()
                              
                              
                              תגובה 1 תגובה אחרונה
                              0
                              • yossizY מנותק
                                yossizY מנותק
                                yossiz
                                השיב לLindoorsOS ב נערך לאחרונה על ידי
                                #17

                                הנה:

                                def main():
                                    name = input ('enter name: ')
                                    names = {
                                        "רבא": "rava.txt",
                                        "אביי": "abye.txt",
                                        "שמואל": "shmuel.txt"
                                    }
                                 
                                    chosen = names.get(name, None)
                                    if chosen is not None:
                                        print(chosen)
                                    else:
                                        print("שם לא קיים במערכת")
                                
                                if __name__ == '__main__':
                                    main()
                                

                                📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

                                L תגובה 1 תגובה אחרונה
                                1
                                • L מנותק
                                  L מנותק
                                  LindoorsOS
                                  השיב לyossiz ב נערך לאחרונה על ידי
                                  #18

                                  @yossiz אמר בעזרה | בניית תוכנת חיפוש בPYTHON:

                                  הנה:

                                  def main():
                                      name = input ('enter name: ')
                                      names = {
                                          "רבא": "rava.txt",
                                          "אביי": "abye.txt",
                                          "שמואל": "shmuel.txt"
                                      }
                                   
                                      chosen = names.get(name, None)
                                      if chosen is not None:
                                          print(chosen)
                                      else:
                                          print("שם לא קיים במערכת")
                                  
                                  if __name__ == '__main__':
                                      main()
                                  

                                  תודה.כלומר המדריך שאני לומד ממנו הוסיף סתם את raw_?

                                  yossizY תגובה 1 תגובה אחרונה
                                  0
                                  • yossizY מנותק
                                    yossizY מנותק
                                    yossiz
                                    השיב לLindoorsOS ב נערך לאחרונה על ידי
                                    #19

                                    @lindoorsos לא, זה היה בפייתון 2, בגירסה 3 שינו את השם של הפונקציה.

                                    📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

                                    L תגובה 1 תגובה אחרונה
                                    1
                                    • L מנותק
                                      L מנותק
                                      LindoorsOS
                                      השיב לyossiz ב נערך לאחרונה על ידי
                                      #20

                                      @yossiz אמר בעזרה | בניית תוכנת חיפוש בPYTHON:

                                      @lindoorsos לא, זה היה בפייתון 2, בגירסה 3 שינו את השם של הפונקציה.

                                      אה אוי.אני עובד עם מדריך של פייתון 2...נחפש של 3.בינתיים מה התקלה כאן?

                                      def main():
                                      rava_file = open (r'C:\Users\user\Downloads\Portable Python-3.8.6 x64\baal\rava.txt)
                                                        rava = rava_file.read()
                                          name = input ('enter name: ')
                                          names = {
                                              "רבא":  rava,
                                              "אביי": "abye.txt",
                                              "שמואל": "shmuel.txt"
                                          }
                                       
                                          chosen = names.get(name, None)
                                          if chosen is not None:
                                              print(chosen)
                                          else:
                                              print("שם לא קיים במערכת")
                                       
                                      if __name__ == '__main__':
                                          main()
                                      
                                      
                                      yossizY תגובה 1 תגובה אחרונה
                                      0
                                      • yossizY מנותק
                                        yossizY מנותק
                                        yossiz
                                        השיב לLindoorsOS ב נערך לאחרונה על ידי
                                        #21

                                        @lindoorsos אמר בעזרה | בניית תוכנת חיפוש בPYTHON:

                                        בינתיים מה התקלה כאן?

                                        תמיד תמיד תביא את הפלט של השגיאה

                                        📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

                                        L תגובה 1 תגובה אחרונה
                                        1
                                        • L מנותק
                                          L מנותק
                                          LindoorsOS
                                          השיב לyossiz ב נערך לאחרונה על ידי
                                          #22

                                          @yossiz אמר בעזרה | בניית תוכנת חיפוש בPYTHON:

                                          @lindoorsos אמר בעזרה | בניית תוכנת חיפוש בPYTHON:

                                          בינתיים מה התקלה כאן?

                                          תמיד תמיד תביא את הפלט של השגיאה

                                          invalid sytex

                                          yossizY תגובה 1 תגובה אחרונה
                                          0

                                          • 1
                                          • 2
                                          בא תתחבר לדף היומי!
                                          • התחברות

                                          • אין לך חשבון עדיין? הרשמה

                                          • התחברו או הירשמו כדי לחפש.
                                          • פוסט ראשון
                                            פוסט אחרון
                                          0
                                          • דף הבית
                                          • קטגוריות
                                          • פוסטים אחרונים
                                          • משתמשים
                                          • חיפוש
                                          • חוקי הפורום