Python:字符串连接

2024-05-19 10:09:39 发布

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

我从Python开始,阅读这本书:用Python自动化那些无聊的东西

我在第四章做一个叫做逗号代码的练习。我应该能够创建一个简单的函数,它可以接受任何长度的列表,例如[苹果”,“香蕉”,“豆腐”,“猫],并输出为:苹果,香蕉,豆腐和猫;该键能够在最后一个和倒数第二个列表值之间插入单词

我写了一些有用的东西(见下文)。但它以新行而不是一行输出值

'''Practice Projects - Comma Code'''

def commacode(list_range):
    for i in range(len(list_range)):
        #print(i)
        position = len(list_range) - i
        #print(position)
        list_a = ''
        list_b = ''
        if position != 1:
            #list = ''
            list_a += str(list_range[i]) + ','
            print(list_a)
        else:
            list_b += list_a + ' and ' + str(list_range[i])
    print(list_a + list_b)

rangeoflist = ['apples','bananas','tofu','cats']
commacode(rangeoflist)
#print(rangeoflist)

如何在一行上获得输出

enter image description here

谢谢


Tags: 函数代码苹果列表lenpositionrangelist
2条回答

要将句子打印成一行,请将end=''添加到第一行print()

'''Practice Projects - Comma Code'''

def commacode(list_range):
    for i in range(len(list_range)):
        position = len(list_range) - i
        list_a = ''
        list_b = ''
        if position != 1:
            list_a += str(list_range[i]) + ','
            print(list_a, end='')                  # <  add end='' here
        else:
            list_b += list_a + ' and ' + str(list_range[i],)
    print(list_a + list_b)

rangeoflist = ['apples','bananas','tofu','cats']
commacode(rangeoflist)

印刷品:

apples,bananas,tofu, and cats

使用str.join可以实现更简单的代码。例如:

rangeoflist = ['apples','bananas','tofu','cats']
print(','.join(rangeoflist[:-1]) + ' and ' + rangeoflist[-1])

印刷品:

apples,bananas,tofu and cats

Python在字符串方面相当优雅。我使用join和数组切片

rangeoflist = ['apples','bananas','tofu','cats']
solution = " and ".join([", ".join(rangeoflist[:-1]), rangeoflist[-1]])
print(solution)

这就是您需要的全部代码

相关问题 更多 >

    热门问题