2016-09-28 3 views
-5

Kann jemand helfen? Ich muss das zur Arbeit bringen, aber es wird nicht funktionieren, ich habe einen einfachen Fehler gemacht, aber ich kann es nicht erkennen. (Ignorieren Sie die Rechtschreibfehler)Land Array Aufgabe

countries = ["Spain","England","Scotland","USA","Wales","Ireland","France", 
      "Greece","China","Japan"] 

print("1. Add a new country") 
print("2. Delete a country") 
print("3. Sort the countries") 
choice = int(input("Select the option you require")) 
if choice == 1: 
    newcount = input("Enter a country to be added to the list:") 
    countries.append(newcount) 
    print("Your countires are now:",countries) 

if choice == 2: 
    deletec = input("Enter a country to be deleted:") 
    countries.pop(deletec) 
    print("Your countires are now",countries) 

if choice == 3: 
    countries.sort 
    print("Your countries are now",countries) 
+0

Sie die Klammern auf 'countries.sort' fehlt, und auf Ihren Anruf' pop' ist falsch. –

+3

Bitte seien Sie genauer, wenn Sie Fragen stellen. Anstatt zu sagen, dass dieser Code nicht funktioniert, schreiben Sie, wie genau es nicht funktioniert. Was soll dieser Code tun? Was macht es stattdessen? Was ist eine Fehlermeldung? –

Antwort

1

pop funktioniert nicht wie Sie denken, es tut. Verwenden Sie stattdessen remove.

Sie haben vergessen, die Klammern auf countries.sort()

+0

'countries.sort()' tut nichts in Python 2.7. Ist es in 3.x als zwei von euch das gleiche kommentiert? "Out = countries.sort()" und "print out" drucken "None". – roganjosh

+0

"None" zurückgeben und nichts tun ist nicht dasselbe. 'countries.sort()' ändert 'countries' so, dass es sortiert ist. –

+0

Ich akzeptiere, dass meine ursprüngliche Aussage falsch war. Wenn Sie jedoch in dieser Frage die Länderliste verwenden und '.sort()' verwenden, wird 'None' zurückgegeben. Es wäre normalerweise "sortiert (Länder)" – roganjosh