欢迎来到代码驿站!

Python代码

当前位置:首页 > 软件编程 > Python代码

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

时间:2022-10-20 10:14:39|栏目:Python代码|点击:

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

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

解决办法:

1.设置 end=’’

如何使Python中的print()语句运行结果不换行 的方法,设置 end=’’。

如下代码所示:

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

运行结果为:

abc

2.拼接字符串(string)

把列表中的元素拼接为一个字符串(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)

3.举例

(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

参考文章:

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

上一篇:Python字符串通过'+'和join函数拼接新字符串的性能测试比较

栏    目:Python代码

下一篇:Python高级特性切片(Slice)操作详解

本文标题:如何在Python 中使用 join() 函数把列表拼接成一个字符串

本文地址:http://www.codeinn.net/misctech/216788.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有