仅在 Python 中的第一个空格处拆分字符串
Split a string only on the first Space in Python
使用设置为的str.split()
方法仅在第一个空格处拆分字符串,例如. 当参数设置为时,该方法仅执行一次拆分。maxsplit
1
my_str.split(' ', 1)
split()
maxsplit
1
主程序
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 ']
当您想要拆分第一个空白字符(包括制表符、换行符等)而不仅仅是第一个空格时,此方法很有用。