零、文首
之前发过一篇python单行输入多个变量的文章,使用split()函数将输入分割。文章内对于split()的描述不够准确,所以又出了一篇文章仔细讲讲split()到底有什么用。
- 本文所有代码皆在
VSCode 1.85,python 3.12.0下运行。
一、split()的作用
split在英文里有使……分开的意思,所以我们可以大胆推测,split()的作用就是把一个东西分成多个。
实际也确实如此。
split()是将一个字符串按照另一个字符串分割成多个不同字符串。
就是把一个字符串看作分隔符,删掉分隔符后每个部分单独成为一个独立的量。
没听懂?举个例子就明白了。
例如,将1,2,3,4,5按照逗号分割,则会变成1,2,3,4,5这五个字符串。
二、代码里的split
1. 如何将split()写进代码
将刚才的例子写成代码,就是:
s = "1,2,3,4,5" # 这里用双引号单引号都可以
a = s.split(',') # 同上
print(a)
运行之后,我们发现,输出为:
['1', '2', '3', '4', '5']
为什么是这样呢?
因为,split()会将字符串分割后的结果放入一个列表,所以a其实是一个由多个字符串构成的列表,而非一个字符串。
split()的括号内放的同样是一个字符串,也就是分隔符(不写默认为空格)。
如果我们想要把分割后的列表赋给多个变量,可以这样写:
s = "1,2,3,4,5" # 这里用双引号单引号都可以
a,b,c,d,e = s.split(',') # 同上
print(a,b,c,d,e) # 逗号会当作空格输出
输出为:
1 2 3 4 5
是不是就变成多个变量了?
而用在input上同理,将输入的一行字符串按分隔符分割成多个字符串,再赋给多个变量,就达成了我们单行输入多个变量的目的。
2. 类型转换
列表的类型转换可以用函数map(),格式如下:
map(转换类型, 转换目标列表)
将刚才的例子里的列表a转换为整型:
s = "1,2,3,4,5"
a = list(map(int, s.split(',')))
print(a)
输出为:
[1, 2, 3, 4, 5]
可以发现,输出由原来的字符串列表变成了整型列表。
需要注意的是,map()函数的返回值是一个迭代器,所以我们还需要list()函数将其转换成列表才可以得到想要的输出。以后如果有需要还会出一期关于map()的教程。
三、结束
本文到这里就结束了,如果文章有什么错误或不理解的地方可以在评论区或私信指出,886!
本文详细介绍了Python中的split()函数,如何将字符串按指定分隔符分割成列表,以及如何通过map()进行类型转换。通过实例演示了如何在代码中应用这些功能实现单行输入多变量的处理。

1350

被折叠的 条评论
为什么被折叠?



