📜  Python|字符串中的连续元素交换

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

Python|字符串中的连续元素交换

有时,在使用字符串时,我们可能会遇到一个问题,我们可能需要执行字符串中连续元素的交换。让我们讨论可以执行此任务的某些方式。

方法 #1:使用join() + zip() + 生成器表达式
上述功能的组合可以用来解决这个问题。在此,我们使用 zip() 执行连接连续字符的任务,生成器表达式用于提供交换逻辑。

# Python3 code to demonstrate working of
# Consecutive element swapping in String
# using join() + zip() + generator expression
  
# initializing string 
test_str = "gfgisbesty"
  
# printing original string 
print("The original string is : " + test_str)
  
# Consecutive element swapping in String
# using join() + zip() + generator expression
res = ''.join([char[1] + char[0] for char in zip(test_str[::2], test_str[1::2])])
  
# printing result
print("String after Consecutive Swapping : " + str(res))
输出 :
The original string is : gfgisbesty
String after Consecutive Swapping : fgigbsseyt

方法#2:使用正则表达式
也可以使用正则表达式和正确构建的正则表达式来执行此任务。

# Python3 code to demonstrate working of
# Consecutive element swapping in String
# using regular expression
import re 
  
# initializing string 
test_str = "gfgisbesty"
  
# printing original string 
print("The original string is : " + test_str)
  
# Consecutive element swapping in String
# using regular expression
res = re.sub(r'(.)(.)', r'\2\1', test_str)
  
# printing result
print("String after Consecutive Swapping : " + str(res))
输出 :
The original string is : gfgisbesty
String after Consecutive Swapping : fgigbsseyt