python中如何把列表转换为字符串

326 阅读1分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

python中把列表转换为字符串

1、join方法

lis = ['1','2','3','4','5']
s = " " .join (lis)
print(s)
>>>'1 2 3 4 5'

语法格式为: str.join(sequence) sequence是序列类型,序列类型有列表、元组、range 如果列表中为int型,可使用map(,)

lis = [1,2,3,4,5]
s = " ".join(map(str,lis))
print(s)
>>>'1 2 3 4 5'

2、for语句

lis = ['1','2','3','4','5']
s = ""
for i in lis:
	s = s + str(i) + " "
print(s)

3、使用 * 号

列表前加个 * 号,是将列表拆分成单个元素,然后传入到函数中。 可用于print()中,例如:

a = [1,2,3,4,5]
print(a)
print(*a)
>>>[1,2,3,4,5]
>>>1 2 3 4 5

*一般用在传递列表参数到函数中,比如

def plus(a,b):
	return a + b

lis = [1,2]
print(plus(*lis))
>>>3

python中使用input()来从键盘输入字符串 而这个操作稍微不注意会出现一些问题,比如说将输入的字符串转为列表:

a = input()
lis = list(a)
print(lis)

当你输入一行字符串以空格间隔时: 在这里插入图片描述 那么你可能会想我把a中空格去掉就ok了,你可能会想到使用replace方法。==但是如果你输入负数呢?== 在这里插入图片描述 所以面对这些问题,我们可以使用split()方法:

a = input().split()
lis = list(a)
print(lis)

当以空格间隔的时候split()括号内不需要放任何参数: 在这里插入图片描述 如果你用逗号间隔,那么需要改为:input().split(",") 在这里插入图片描述 其实,一般当使用空格间隔的时候,才容易出现上述问题。