关于Python split('\n')分割多行字符串出现空字符串的疑问
问题解答
你的猜想完全正确!
当用三个单引号定义多行字符串时,第一行的三个单引号后直接跟了换行,这意味着字符串的开头第一个字符就是换行符\n;最后一行内容结束后直接跟三个单引号,说明字符串结尾也是一个换行符\n。
调用split('\n')时,Python会按\n拆分字符串:
- 开头的
\n前没有任何内容,拆分后第一个元素就是空字符串'' - 结尾的
\n后没有任何内容,拆分后最后一个元素也是空字符串''
举个反例,如果字符串定义成这样:
data = '''hello my name is mj and I like reading novels and webtoons nice meeting you all!'''
调用split('\n')会得到:
['hello my name is mj', 'and I like reading novels and webtoons', 'nice meeting you all!']
首尾就没有空字符串了——因为开头的三个单引号后直接是内容,没有换行;结尾内容后直接是三个单引号,也没有换行。
内容的提问来源于stack exchange,提问作者조민주
相关产品推荐
相关产品推荐

