-
@lindoorsos תעשה שני מערכים מקבילים, אחד של הקלט ואחד של הפלט
חפש את הקלט במערך הקלט, וקח את הפלט ממערך הפלט בדיוק מאותו אינדקס שבו היה הקלט במערך הקלט.inputs = ["רבא","אביי","שמואל"] outputs = [rava.txt, abye.txt, shmuel.txt] try: i = inputs.index(myinput) print(outputs[i]) except ValueError: print("שם לא קיים במערכת")
-
הנה קוד כמו ש@yossiz ענה:
names = { "רבא": "rava.txt", "אביי": "abye.txt", "שמואל": "shmuel.txt" } chosen = names.get(input, None) if chosen is not None: print(chosen) else: print("שם לא קיים במערכת")
סתם שאלה, הקוד שכתבת תקני?
אפשר לכתוב print ללא סוגריים? -
@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))
כי לדעתי זאת דרך נכונה לתת לפיתון להקפיץ שגיאות בעצמה ולא לנסות לנהל אותם לבד. זה מקל בד"כ על דיבאג.. -
@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 ללא סוגריים?אני כתבתי ככה כמה פעמים
-
@lindoorsos כמו שחשבתי dict הוא למעשה טבלת גיבוב, ראה כאן.
-
@רחמים אמר בעזרה | בניית תוכנת חיפוש בPYTHON:
@lindoorsos כמו שחשבתי dict הוא למעשה טבלת גיבוב, ראה כאן.
כפי שנרמז זה מאוד מאוד לא רלוונטי לנושא ולשואל.
-
ברור לי שאני מפשל במשהו.כבר הרבה זמן לא ישבתי על פייתון, ואני די מתחיל בנושא...
אז ברור שאני עושה טעות שטותית, אבל אני לא מצליח למצוא אותה
מה התקלה כאן?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("שם לא קיים במערכת")
-
@lindoorsos אתה מקבל שגיאה? תדביק פה את הפלט
-
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
-
@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()
-
הנה:
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()
-
@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_?
-
@lindoorsos לא, זה היה בפייתון 2, בגירסה 3 שינו את השם של הפונקציה.
-
@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()
-
@lindoorsos אמר בעזרה | בניית תוכנת חיפוש בPYTHON:
בינתיים מה התקלה כאן?
תמיד תמיד תביא את הפלט של השגיאה