我的append命令不起作用python

时间:2017-06-25 18:21:40

标签: python append

这是我的代码:

View -> Show Bytecode

它不会将其附加到列表中。我也试过这个:

letters = ['a','b','c']
print("here are the letters you already searched",letters)
letter = input("please enter a letter")
print(letter)
letters = letters.append(letter)

2 个答案:

答案 0 :(得分:1)

您的第一个示例无法正常工作,因为您正在使用letters = letters.append =试图重新分配字母变量,您的第二个示例是正确的,但是......

...您可能正在寻找的是一个循环,因此您可以连续输入字母,while True:是创建循环的一种方式:

letters = ['a','b','c']
while True:
    print("here are the letters you already searched",letters)
    letter = input("please enter a letter: ")
    letters.append(letter)

可以选择使用break

来摆脱循环
letters = ['a','b','c']
while True:
    print("here are the letters you already searched",letters)
    print("type '_done_' to finish")
    letter = input("please enter a letter: ")
    if letter == "_done_":
        break
    letters.append(letter)

答案 1 :(得分:0)

使用raw_input(使用您的第二个示例)代替:

letter = raw_input("please enter a letter")
letters.append(letter)

如果d被要求input实际上应该"d"(将会正确追加),您可能会输入raw_input这样的字母。 d会一直将您的信件转换为字符串,因此您可以像input()一样输入它。请仔细阅读以下内容:

  

raw_input()解释并评估输入,这意味着如果用户输入一个整数,将返回一个整数,如果用户输入字符串,则返回字符串。

     

lambdaInvoker.invoke(invocationRequest!).continue(with: AWSExecutor.mainThread(), with: { (task:AWSTask!) -> AnyObject! in if task.error != nil { self.sendErrorPopup("Error: \(task.error?.localizedDescription)") } else { print("TOKEN: ", task.result) } 完全取用用户输入的内容并将其作为字符串传回。它不解释用户输入。即使输入整数值10或输入列表,其类型也只是字符串。

Source