Python错误试图从列表中的文本文件中获取颜色

时间:2018-03-26 20:29:21

标签: python

我一直收到语法错误,它突出显示“def list(1)”帮助中的1!我需要将一个字母作为输入,用任何字母开头的颜色填充列表颜色,并向用户显示颜色列表。

colors = [ ]

def letter( ):    
    part_one = str(input("What is the first letter of the color?: "))    
    part_two = part_one.upper( )    
    return part_two

#Global colors.

def list(1):
    color = open("Colors.txt", 'r')
    for line in colors:
        if line[0] == 1:
            colors.append(line.rstrip())
        color.close
        return colors

def main( ):
    search = letter( )
    color = list(search)
    print(colors)

main( )

1 个答案:

答案 0 :(得分:0)

def list(1):突出显示为语法错误的原因是它是语法错误。

函数定义的括号内部是函数parameters。这些是可用于访问调用者为您提供的参数的局部变量的名称。

例如:

def spam(count):
    for _ in count:
        print('Spam!')

spam(5)

count是一个参数,当我调用5时,它会获取参数值spam(5)

1号码不能用作变量(you wouldn't want to reassign 1 to be a name for 5, would you?),因此也不能用作参数。

我不确定你实际上想要做什么。您正在使用search调用该函数,def list(letter): color = open("Colors.txt", 'r') for line in colors: if line[0] == letter: colors.append(line.rstrip()) color.close return colors 是一个单字母字符串。所以也许是这样的:

hosts: [{ socket_address: { address: 127.0.0.1, port_value: 30270 }}]