在删除用户创建的列表中“和”之后的“,”时需要帮助

时间:2019-02-16 23:25:22

标签: python-3.x

我正在尝试为一个班级编写一个程序,该指令将使用教师给我们的第一部分代码:

pc_parts = []
while True:
    newWord = input("Enter a word to add to the list (press return to stop adding words) > ")
    if newWord == "":
        break
    else:
        pc_parts.append(newWord)

他希望我们添加自己的代码部分,以显示用户输入的所有项目,并用逗号隔开,最后两个项目之间用“和”表示。但是我使用的代码会在和之后不断插入逗号。如果要删除最后一个逗号,我需要帮助。我写的代码部分是:

if len(pc_parts) > 1:
    pc_parts.insert(-1, 'and')
print(*pc_parts, sep=', ')`

如果我输入“主板”,“处理器”,“图形卡”,“硬盘驱动器”,则输出为:

“主板,处理器,图形卡和硬盘驱动器”

“和”走后我需要逗号。帮助!

1 个答案:

答案 0 :(得分:1)

如果您有一些列表,例如:

someList = ["motherboard", "processor", "graphics card", "hard drive"]

然后您可以先打印出除最后一个元素之外的所有内容,如下所示:

print(*someList[0:len(someList) - 1], sep = ", ", end = ", and ")

上面代码的第一部分从索引0打印到列表的最后一个元素。用[0:len(someList)-1]表示。

我们还决定每个元素将以“,”分隔。即逗号和空格。这是通过参数sep =“,”。

完成的。

然后我们指定要打印的字符串,并在所有指定的元素都已打印后打印。此时屏幕上将显示:

motherboard, processor, graphics card, and 

然后我们用以下行打印出最后一个元素:

print(someList[len(someList) - 1])

此时控制台将显示为:

motherboard, processor, graphics card, and hard drive

所有代码看起来像这样:

someList = ["motherboard", "processor", "graphics card", "hard drive"] 
print(*someList[0:len(someList) - 1], sep = ", ", end = ", and ")
print(someList[len(someList) - 1])

也尝试检查python文档中的print(),它似乎不堪重负,但尝试逐行阅读函数的作用:)

在这里是: https://docs.python.org/3/library/functions.html#print

或更容易理解的链接: https://www.w3schools.com/python/ref_func_print.asp