在 Python 中拆分字符串并删除空格

要拆分字符串并删除空格:

  1. 使用 str.split() 方法将字符串拆分为列表。
  2. 使用列表推导来迭代列表。
  3. 在每次迭代中,使用 str.strip() 方法删除前导和尾随空格。
my_str = 'one,   two,   three,  four'

my_list = [word.strip() for word in my_str.split(',')]
print(my_list)  # 👉️ ['one', 'two', 'three', 'four']

在 Python 中拆分字符串并删除空格

我们使用 str.split() 方法在每次出现逗号时拆分字符串。

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

  • separator 在每次出现分隔符时将字符串拆分为子字符串
  • maxsplit 最多完成最大拆分(可选)

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

my_str = 'one,   two,   three,  four'

l = my_str.split(', ')
print(l)  # 👉️ ['one', '  two', '  three', ' four']

下一步是使用列表推导来迭代字符串列表。

my_str = 'one,   two,   three,  four'


my_list = [word.strip() for word in my_str.split(',')]
print(my_list)  # 👉️ ['one', 'two', 'three', 'four']

 

在每次迭代中,我们调用 str.strip() 方法从字符串中删除任何前导或尾随空格。

example = '   hello      '

print(repr(example.strip())) # 👉️ 'hello'

str.strip 方法返回删除了前导和尾随空格的字符串副本。

另一种方法是使用 map() 函数。

要拆分字符串并删除空格:

  1. 对字符串调用 str.split() 方法以获取字符串列表。
  2. 将 str.strip() 方法和列表传递给 map() 函数。
  3. map() 函数将对列表中的每个字符串调用 str.strip() 方法。
my_str = 'one,   two,   three,  four'

my_list = list(map(str.strip, my_str.split(',')))

print(my_list) # 👉️ ['one', 'two', 'three', 'four']

map() 函数将一个函数和一个可迭代对象作为参数,并使用可迭代对象的每个项调用该函数。

map() 函数返回一个地图对象(不是列表)。 如果您需要将值转换为列表,请将其传递给 list() 类。

选择哪种方法是个人喜好问题。 我会选择列表推导,因为它更具可读性和明确性。