仅在 Python 中的第一个空格上拆分字符串

仅在 Python 中的第一个空格处拆分字符串

Split a string only on the first Space in Python

使用设置为的str.split()方法仅在第一个空格处拆分字符串,例如. 当参数设置为时,方法仅执行一次拆分maxsplit1my_str.split(' ', 1)split()maxsplit1

主程序
my_str = 'one two three four' # 👇️ split string only on first space my_list = my_str.split(' ', 1) print(my_list) # 👉️ ['one', 'two three four'] # 👇️ split string only on first whitespace char my_list_2 = my_str.split(maxsplit=1) print(my_list_2) # 👉️ ['one', 'two three four']

str.split ()
方法使用定界符将字符串拆分为子字符串列表。

该方法采用以下 2 个参数:

姓名 描述
分隔器 在每次出现分隔符时将字符串拆分为子字符串
最大分裂 最多maxsplit完成拆分(可选)
maxsplit参数设置为1时,最多完成 1 次拆分。

如果在字符串中找不到分隔符,则返回仅包含 1 个元素的列表。

主程序
my_str = 'one' my_list = my_str.split(' ', 1) print(my_list) # 👉️ ['one']

如果您的字符串以空格开头,您可能会得到令人困惑的结果。

主程序
my_str = ' one two three four ' # 👇️ split string only on first space my_list = my_str.split(' ', 1) print(my_list) # 👉️ ['', 'one two three four ']

您可以使用该str.strip()方法删除前导或尾随分隔符。

主程序
my_str = ' one two three four ' # 👇️ split string only on first space my_list = my_str.strip(' ').split(' ', 1) print(my_list) # 👉️ ['one', 'two three four']

在调用该方法之前,我们使用该str.strip()方法从字符串中删除任何前导或尾随空格split()

separator如果您只需要在第一个空白字符处拆分字符串,则在调用该str.split()
方法时
不要为参数提供值。

主程序
my_str = 'one\r\ntwo three four' # 👇️ split string only on first whitespace char my_list_2 = my_str.split(maxsplit=1) print(my_list_2) # 👉️ ['one', 'two three four']
当在str.split()没有分隔符的情况下调用该方法时,它将连续的空白字符视为单个分隔符。

如果字符串以尾随空格开始或结束,则列表将不包含空字符串元素。

主程序
my_str = ' one\r\ntwo three four ' # 👇️ split string only on first whitespace char my_list_2 = my_str.split(maxsplit=1) print(my_list_2) # 👉️ ['one', 'two three four ']

当您想要拆分第一个空白字符(包括制表符、换行符等)而不仅仅是第一个空格时,此方法很有用。