如何在python上实现这个反向变体?
命令行linux上的示例如何在python上实现这个反向变体?,python,python-3.x,string,text,reverse,Python,Python 3.x,String,Text,Reverse,命令行linux上的示例 echo fc67e62b625f33d7928fa1958a38a353085f0097cc22c08833850772035889b8 | grep -o .. | tac | paste -sd '' - 我试着在python上找到如何做到这一点,但没有找到。 我想做的是——我试着按照这个规则反转文本中的每一行。 只有我发现的是 txt = "Hello World"[::-1] print(txt) 示例ABCDEF echo ABCDE
echo fc67e62b625f33d7928fa1958a38a353085f0097cc22c08833850772035889b8 | grep -o .. | tac | paste -sd '' -
我试着在python上找到如何做到这一点,但没有找到。
我想做的是——我试着按照这个规则反转文本中的每一行。
只有我发现的是
txt = "Hello World"[::-1]
print(txt)
示例ABCDEF
echo ABCDEF | grep -o .. | tac | paste -sd '' -
将给EFCDAB
这个
返回FEDCBA如果我理解正确,您希望将字符串拆分为两个字符对,然后颠倒这些字符对的顺序 您可以使用
re
将字符串拆分为这样的对,然后使用切片语法反转顺序,然后再次将它们连接起来:
import re
source = 'ABCDEF'
result = ''.join(re.split('(.{2})', source)[::-1])
如果我理解正确,您希望将字符串拆分为两个字符对,然后颠倒这些字符对的顺序 您可以使用
re
将字符串拆分为这样的对,然后使用切片语法反转顺序,然后再次将它们连接起来:
import re
source = 'ABCDEF'
result = ''.join(re.split('(.{2})', source)[::-1])
我认为这是一个合适的解决方案:
我认为这是一个合适的解决方案:
您可以通过一行列表理解来完成这一切
chunkReverse=lambda s,n:''.join([s[i:i+n]表示范围(0,len,n)][::-1])
打印(chunkReverse('ABCDEF',2))#EFCDAB
解释
result=[s[i:i+n]表示范围(0,len(s),n)]#['AB','CD','EF']
result=result[:-1]#['EF','CD','AB']
您可以通过一行列表理解来完成这一切
chunkReverse=lambda s,n:''.join([s[i:i+n]表示范围(0,len,n)][::-1])
打印(chunkReverse('ABCDEF',2))#EFCDAB
解释
result=[s[i:i+n]表示范围(0,len(s),n)]#['AB','CD','EF']
result=result[:-1]#['EF','CD','AB']
这意味着向后遍历整个字符串并返回子字符串。第一个和第二个参数是开始和结束索引。第三个参数是步骤;这是
-1
。这告诉我们要从最后开始。但在linux comand line如何做,我不明白。更新qustion what return linux命令行,这意味着向后遍历整个字符串并返回子字符串。第一个和第二个参数是开始和结束索引。第三个参数是步骤;这是-1
。这告诉我们要从最后开始。但在linux comand line如何做,我不明白。更新qustion what return linux命令行Yes this exacly我正在尝试做什么。Yes this exacly我正在尝试做什么。
sample_string = "ABCDEFG"
string_length = len(sample_string)
reversed_string = sample_string[string_length::-1]
print(reversed_string)