2017-01-14 3 views
-1

Hallo Ich fange an, Python zu lernen. Ich hatte einen Code mit Pycharm-Plattform über lineare Suche geschrieben. Aber ich habe die erforderliche Ausgabe auf der Konsole nicht erhalten. Bitte geben Sie an, wo ich im Code falsch gelaufen bin. Danke!pycharm zeigt keine Ausgabe

def linsearch (num, arr): 
    print("Number to be search is:", num) 
    print("The given array is:", arr) 
    pos = 0 
    for index in range(len(arr)): 
     if arr(index) == num: 
      pos = index + 1 
      print(num, "found at index", pos) 
      break 
    return pos 

num = 25 
arr = [10, 20, 65, 15, 25, 8] 
+2

Sie haben Ihre linsearch-Methode – smoggers

Antwort

2

print(linsearch(num, arr)) 

Am Ende des Codes hinzufügen. Sie haben die Funktion hier nur definiert (def). Jetzt müssen Sie es nennen, indem nur linsearch(num,arr)

def linsearch (num, arr): 
    print("Number to be search is:", num) 
    print("The given array is:", arr) 
    pos = 0 
    for index in range(len(arr)): 
     if arr(index) == num: 
      pos = index + 1 
      print(num, "found at index", pos) 
      break 
    return pos 

num = 25 
arr = [10, 20, 65, 15, 25, 8] 
print(linsearch(num,arg)) 

Eine Alternative ist das Schreiben return mit print zu ersetzen. Dann müssen Sie die Funktion nur so aufrufen: linsearch(num,arr) statt print(linsearch(num,arg))

+0

nicht aufgerufen, 'return' ist jedoch besser, weil Sie später die Funktion aufrufen oder den zurückgegebenen Wert speichern können später verwenden. – RnRoger