Python 这个语句(行,str)=str.split(“\n”和“1”)是什么意思?
我熟悉Python 这个语句(行,str)=str.split(“\n”和“1”)是什么意思?,python,string,iterable,Python,String,Iterable,我熟悉split函数,我会这样使用它: str = "Line1-abcdef \nLine2-abc \nLine4-abcd" print str.split( ) 以上内容将返回以下内容: ['Line1-abcdef', 'Line2-abc', 'Line4-abcd'] 简单易用。但是,我遇到了一段代码,其中包含以下语句: (line, str) = str.split("\n", 1) 有两件事我不明白: split的第二个参数及其作用。我看了看,上面写着生产线的数量。这是什
split
函数,我会这样使用它:
str = "Line1-abcdef \nLine2-abc \nLine4-abcd"
print str.split( )
以上内容将返回以下内容:
['Line1-abcdef', 'Line2-abc', 'Line4-abcd']
简单易用。但是,我遇到了一段代码,其中包含以下语句:
(line, str) = str.split("\n", 1)
有两件事我不明白:
split
的第二个参数及其作用。我看了看,上面写着生产线的数量。这是什么意思split
返回一个iterable向量。为什么它被分配到(行,str)
?这里的(line,str)
是什么意思第二个参数
maxplit=1
表示在遇到分隔符\n
一次后停止拆分
因此,您只有两个部分,行和字符串的其余部分
例如:
str = 'This is one line\nThis is a second line\nThis is a third line'
(line, str) = str.split('\n', 1)
print(line)
# 'This is one line'
print(str)
# 'This is a second line\nThis is a third line'
使用基本字符串进行测试,
你怎么做?
。
line
将获得拆分的第一个元素,str
将获得其余元素(因为我们只拆分了一次)如果您感到好奇,为什么不试试呢?请仔细阅读您指出的文档,特别是示例,你会明白的。看看split是如何工作的。@Bakuriu谢谢你能回答这个问题吗?很不幸,在python2中,maxsplit参数不能通过关键字传递。这在python3中是固定的,在python3中,您可以编写str.split('\n',maxslit=1)
,并使代码更加自我记录。