📜  Python| K字符分割字符串

📅  最后修改于: 2022-05-13 01:55:25.012000             🧑  作者: Mango

Python| K字符分割字符串

在使用Python字符串时,列表拆分的问题和应用非常普遍。在用例中,某些字符通常会被忽略。但有时,我们可能不需要省略这些字符,而是将它们包含在我们的编程输出中。让我们讨论一些可以解决这个问题的方法。

方法 #1:使用split() + 列表推导
可以使用拆分函数和列表推导来执行这种操作。不省略字符的主要区别在于,我们在每个元素之后专门添加了我们可能在过程中省略的字符。

# Python3 code to demonstrate
# K Character Split String
# using list comprehension + split()
  
# initializing string
test_string = "GfG_is_Best"
  
# printing original string
print("The original string : " + str(test_string))
  
# initializing K 
K = '_'
  
# using list comprehension + split()
# K Character Split String
res = [i for j in test_string.split(K) for i in (j, K)][:-1]
  
# print result
print("The list without omitting Character : " + str(res))
输出 :
The original string : GfG_is_Best
The list without omitting Character : ['GfG', '_', 'is', '_', 'Best']

方法#2:使用zip() + chain() + cycle()
也可以使用上述 3 个功能的组合来执行此特定任务。 zip函数可用于绑定逻辑,链和循环函数执行在适当位置插入字符的任务。

# Python3 code to demonstrate
# K Character Split String
# using zip() + chain() + cycle()
from itertools import chain, cycle
  
# initializing string
test_string = "GfG_is_Best"
  
# printing original string
print("The original string : " + str(test_string))
  
# initializing K 
K = "_"
  
# using zip() + chain() + cycle()
# K Character Split String
res = list(chain(*zip(test_string.split(K), cycle(K))))[:-1]
  
# print result
print("The list without omitting character : " + str(res))
输出 :
The original string : GfG_is_Best
The list without omitting Character : ['GfG', '_', 'is', '_', 'Best']