Python程序反转备用字符串然后连接所有元素
给定一个字符串列表,以下程序返回其所有字符串元素的串联列表,其替代元素颠倒。
Input : test_str = ‘geeksgeeks best for geeks’
Output : skeegskeeg best rof geeks
Explanation : Alternate words reversed.
Input : test_str = ‘geeksgeeks best geeks’
Output : skeegskeeg best skeeg
Explanation : Alternate words reversed.
方法 1:使用reversed()和循环
在这种情况下,我们使用 reversed() 执行反转字符串的任务,然后使用 %运算符检查替代项并相应地连接。
Python3
# initializing string
test_str = 'geeksgeeks is best for geeks'
# printing original string
print("The original string is : " + str(test_str))
# splitting string
temp = test_str.split()
res = []
for idx in range(len(temp)):
# reversing if alternate
if idx % 2 == 0:
res.append(''.join(list(reversed(temp[idx]))))
else :
res.append(temp[idx])
res = ' '.join(res)
# printing result
print("Transformed String : " + str(res))
Python3
# initializing string
test_str = 'geeksgeeks is best for geeks'
# printing original string
print("The original string is : " + str(test_str))
# splitting string
temp = test_str.split()
# list comprehension to solve problem in 1 liner
res = ' '.join([''.join(list(reversed(temp[idx]))) if idx % 2 == 0 else temp[idx] for idx in range(len(temp))])
# printing result
print("Transformed String : " + str(res))
输出:
The original string is : geeksgeeks is best for geeks
Transformed String : skeegskeeg is tseb for skeeg
方法 2:使用切片和列表理解
在这种情况下,我们使用切片执行逆转任务,然后使用列表理解来执行循环完成的任务,简而言之。
蟒蛇3
# initializing string
test_str = 'geeksgeeks is best for geeks'
# printing original string
print("The original string is : " + str(test_str))
# splitting string
temp = test_str.split()
# list comprehension to solve problem in 1 liner
res = ' '.join([''.join(list(reversed(temp[idx]))) if idx % 2 == 0 else temp[idx] for idx in range(len(temp))])
# printing result
print("Transformed String : " + str(res))
输出:
The original string is : geeksgeeks is best for geeks
Transformed String : skeegskeeg is tseb for skeeg