将字符串添加到列表中会分别添加每个字符

Adding a string to a list adds each character separately

function = input('Enter function')
a = input('do you want to enter another function')
b = [function]
if a.lower() == 'yes':
    while True:
        function1 = input('Next Function')
        b += function1
        if function1 == 'quit':
            break

print(b)

在此代码中,如果我在函数 1 中输入:y = 9x + 1;它会将值放入数组中,但格式为:'y', ' ', '9x', ' ', '+', ' ', '1'。 如何将输入保存为 y = 9x + 1'? 另外,当我写 quit 时,它会打印数组,但最终值为 q','u','i','t'。 我如何消除这些值?

为了保存 "quit" 原样,您只需将 b += function1 更改为 b.append(function1)

更正后的代码如下:

function = input('Enter function')
a = input('do you want to enter another function')
b = [function]
if a.lower() == 'yes':
    while True:
        function1 = input('Next Function')
        b.append(function1)
        if function1 == 'quit':
            break

print(b)

如果您根本不需要列表中的 'quit' 字符串,您可以按如下方式更改代码:

function = input('Enter function')
    a = input('do you want to enter another function')
    b = [function]
    if a.lower() == 'yes':
        while True:
            function1 = input('Next Function')
            if function1 == 'quit':
                break
            else:
                b.append(function1)

    print(b)

此外,此代码已按原样保存输入 y = 9x + 1(它不会将其保存为 'y', ' ', '9x', ' ', '+', ' ', '1'

我建议在字符串末尾添加 /n

function = input('Enter function\n')
a = input('do you want to enter another function\n')
b = [function]
if a.lower() == 'yes':
    while True:
        function1 = input('Next Function\n')
        b.append(function1)
        if function1 == 'quit':
            break

print(b[:-1])

你应该使用追加。并在此处看到您添加到答案中的最后一个元素是用户输入的值 "quit" 您可以将其从列表中删除,也可以像我在示例中所做的那样不打印列表的最后一项或者一开始就不要把它放在那里。

对于您的第一个请求,您只需在 b 上使用 .append() 将元素附加到列表 b

第一个问题的代码解决:

b.append(function1)

对于您的第二个请求,您可以在将元素附加到 b

之前简单地检查是否输入了 quit

解决第二个问题的代码:

while True:
    function1 = input('Next Function: ')
    if function1 == 'quit':
        break
    b.append(function1)

最终代码:

function = input('Enter function: ')
a = input('Do you want to enter another function: ')
b = [function]
if a.lower() == 'yes':
    while True:
        function1 = input('Next Function: ')
        if function1 == 'quit':
            break
        b.append(function1)


print(b)