在显示我的列表并打印它在我旁边的列表中的位置时,如何删除逗号

2024-04-24 23:49:54 发布

您现在位置:Python中文网/ 问答频道 /正文

我想我的代码打印时,只问的人的姓名和他们在名单上的职位,如:

3 jake
5 Dan

而不是我的代码所做的:,,jake,,Dan,,,,

我该怎么做删除逗号和打印它的位置在列表中的每一行这里是我的代码到目前为止

while True:
print ('1 = Add Name ')
print ('2 = Display List ')
print ('3 = Quit \n')

choice = input('What would you like to do: ')
if choice== '1':
    names = ['' for _ in range(9)]
    name = input('Enter name: ')
    position = input('What position in the list would you like to add to: ')
    position = int(position)
    if -1 < position < 9:
        names.insert(position-1, name) 
if choice == '2':
    print(", ".join(names)) 
    continue
if choice == '3':
    print('Program Terminating')
    break
else:
    print('You have entered something invalid ')
    print('There are only 10 names in the list')
    continue

Tags: to代码nameinyouinputifnames
1条回答
网友
1楼 · 发布于 2024-04-24 23:49:54

只需使用enumerate执行一个循环,并测试n是否为空

l=["","","Jake","","Dan",""]

for i,n in enumerate(l):
    if n:
        print("{} {}".format(i+1,n))

或者在一行中使用带有换行符的str.join内的生成器:

print("\n".join("{} {}".format(i+1,n) for i,n in enumerate(l) if n))

相关问题 更多 >