Python 中使用 join() 函数把列表拼接成一个字符串

本文介绍了如何使用Python的join()函数将列表元素拼接为字符串,包括不换行打印、自定义分隔符、转换元素格式等应用场景,并提供了多个示例代码和实际运行结果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

内容概要:如何把列表中的元素拼接为一个字符串呢?本文介绍了采用 join() 函数的解决方法。

问题:有一个列表,比如:letters=[‘a’,‘b’,‘c’],想要把列表的元素连续显示出来,应该怎么办?

解决办法

1.使用 Python中如何在print()显示后不换行? 的方法,设置 end=‘’。如下代码所示:

letters=['a','b','c']
for letter in letters:
    print(letter,end='')

运行结果为:

abc

2.把列表中的元素拼接为一个字符串(string),然后显示字符串。这里用到了一个神奇的函数:join() ,它可以把列表拼接转换成一个字符串,用法为:字符串=‘分隔符’.join(列表)。如下代码所示:

letters_str=''.join(letters)
print(letters_str)

运行结果为:

abc

另一种情况也适合用 join() 函数:比如有一个词汇构成的列表,需要把这几个词汇组成一个短语。可以把分隔符设置为空格符,用' '.join()实现组合。代码示例如下:

words=['practice','makes','perfect']
phrase=' '.join(words)
print(phrase)

运行结果为:

practice makes perfect

不仅如此,我们还可以在 join() 函数内调用其它函数,如大小写转换、类型转换等,从而一次实现多个功能。这就要通过在 join() 函数中使用 list comprehension(列表推导式)来实现,即: join(function(e) for e in list)。

下面通过例子来看看。

1.比如,列表中的字符既有大写,又有小写。想在拼接的同时,把字符都转换为大写,应该怎么做呢?

方法:在 join() 函数中加入大小写转换的函数 upper()。代码示例如下:

letters=['a','ab','ac','D']
lettersStr=''.join(e.upper()for e in letters)
print(lettersStr)

运行结果为:

AABACD

2.前面提到,join() 函数是把列表的元素拼接为字符串。因此,列表中的元素需要是 string(字符串)类型。如果是一个数字列表,可以使用 join() 函数吗?

可以。只要在 join() 函数中加入类型转换,将数字转换为 string 型即可。代码示例如下:

nums=[1,2,3.6]
numsStr=''.join(str(e) for e in nums)
print(numsStr)

运行结果为:

123.6

3.除了用 Python 的函数,我们还可以应用自定义的函数。

比如,下面的代码先定义了一个 convert() 函数,如果字母是 a 或 A,那么保持不变;其它字母则转换为小写。然后,在 join() 函数中应用 convert() 函数。

def convert(letter):
    if letter.lower()=='a':
        return letter
    else:
        return letter.lower()
letters=['a','B','A','C']
lettersStr=''.join(convert(e)for e in letters)
print(lettersStr)

运行结果为:

abAc

本文对您有帮助的话,请点赞支持一下吧,谢谢!

关注我 宁萌Julie,互相学习,多多交流呀!

参考
https://stackabuse.com/python-convert-list-to-string/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值