我是靠谱客的博主 彩色花卷,最近开发中收集的这篇文章主要介绍Python 3 提取字符串使用 split 方法返回的参数列表中的元素,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

当我第一次接触python 中的split方法的时候,我使用print函数输出了一个字符串被split之后的结果:

str_ = input()
str_.split(',', 3)
# 默认已知只有两个逗号把字符串分成三段
print(['abcd', 'ab', 'cd'])

>>> zai,yu,you  # 用户输入字符串

>>> ['zai', 'yu', 'you']

哦,我见过这种输出结构,它很像列表中包含了三个“元素”:‘zai'、’yu‘、’you‘;

但是,如果你尝试按照列表的理解去输出这些元素:

print(str_[0], str_[1], str_[2])

你可能会认为你会得到:

>>> zai yu you

但是实际上,不出意外的话,你将会得到:

>>> z a i

原因是什么?

这是我们的理解错误导致了上述输出没有按照我们设想的结果输出,我们错把print函数输出的列表当成了str_对象本身;而实际上,如果你试过

print(str_)

>>> zai,yu,you

str_字符串没有变成列表,也没有产生变化

显然,学过python的都知道,字符串类型的对象是不可修改的,所以字符串str_根本没有因为我们使用了split方法而发生任何变化。

那么,print出来的”列表“是谁呢?

如果我们稍微了解过split方法的话,不难知道split方法会产生一个返回值,而这个返回值的类型是一个参数列表,这就是为什么

>>> print(str_.split(',', 3))

>>> ['zai', 'yu', 'you']

ok,那么这个列表并不是str,而是split方法的返回值,换言之,“str_.split(',', 3)”这个玩意就是个参数列表,所以,让我们试试把”str_.split(',', 3)“当成列表对象来输出它的元素:

>>> print(str_.split(',', 3)[0], str_.split(',', 3)[1], str_.split(',', 3)[2])

>>> zai yu you

Yes!得到了我们想要的结果

当然,我们也可以使用其他方法来提取出我们想要的列表元素:

>>> u1, u2, u3 = str_.split(',', 3)

>>> print(u1, u2, u3)

>>> zai yu you

也可以得到我们想要的结果

当然,直接把“str_.split(',', 3)”拿来当作一个新对象使用或许并不直观,我们一般会定义一个新的列表对象来储存它的元素:

str_list1_ = []
str_list1_ += str_.split(',', 3)

>>> print(str_list1_)

>>> ['zai', 'yu', 'you']

——End

最后

以上就是彩色花卷为你收集整理的Python 3 提取字符串使用 split 方法返回的参数列表中的元素的全部内容,希望文章能够帮你解决Python 3 提取字符串使用 split 方法返回的参数列表中的元素所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(29)

评论列表共有 0 条评论

立即
投稿
返回
顶部