2017-01-18 9 views
0

私は最近コーディングの学習を始めました。私の最初の課題では、ユーザーが名前を選択し、ランダムなものを選ぶことを可能にするプログラムを作るように求められました。最後の2つのif文が動作していないpythonの文が動作しない場合

def main(): 
    name = ["josh", "omar", "shatil", "cathrin"] 
    while True: 
    print (name) 
    continueProgram = input("would you like to continue") 
    if continueProgram.lower() =="yes": 
     print(changeList(name)) 
    else: 
     break 
def changeList(items): 
    changeList= input("Enter 'a' to append list, 'r' to remove an item from the list: ") 
    if changeList.lower() == "a": 
    appendList = input("what name would you like to add to the list?: ") items.append(appendList) 
    if changeList.lower() =="r": 
    removeList = input ("what name would you liket to remove from the list?: ")items.remove(removeList) 
    return items 
main() 

:ここに私が思い付いたものです。

+0

def changeList(items): changeList= input("Enter 'a' to append list, 'r' to remove an item from the list: ") if changeList.lower() == "a": appendList = input("what name would you like to add to the list?: ") items.append(appendList) if changeList.lower() =="r": removeList = input ("what name would you liket to remove from the list?: ")items.remove(removeList) return items 

これを試してみてください? – Harsh

+0

@alfasin Huh? 'input'は改行自体を取り除きます。 'print(repr(input( '?')))' –

+0

ここにあなたのコードを投稿したときに何かがうんざりしていると思われます。 'appendList = input("あなたはリストに何を追加しますか? ")items.append(appendList)'は2つの文を1行に入れようとしているので、SyntaxErrorを送出します。一つの行に ';'で区切って複数の文を入れることは可能ですが、これはお勧めしません。あなたのコードを読んでみてください!これには、各関数定義の最後に空白行を入れることも含まれます。 –

答えて

0

あなたのインデントが疑わしいようです。

の代わりに、この:あなたが働いていないことで何を意味するかについて詳しく説明する必要があります...そして、あなたは最後の2行を意味しています

def changeList(items): 
    changeList= input("Enter 'a' to append list, 'r' to remove an item from the list: ") 
    if changeList.lower() == "a": 
     appendList = input("what name would you like to add to the list?: ") 
     items.append(appendList) 
    if changeList.lower() =="r": 
     removeList = input ("what name would you liket to remove from the list?: ") 
     items.remove(removeList) 
    return items 
+0

あなたは 'items'リストを変更しているので、' return'文を削除することもできます。 –

+0

働いていただきありがとうございました – Josh

+1

その後、正しい答えとして – e4c5

関連する問題