Python 将字符串中的每个单词倒转
我的代码中有一个小问题。我正在尝试反转字词和字符串的字符。例如,“狗跑”会变成“ehT神纳” 代码几乎可以工作。它只是不添加空格。你会怎么做Python 将字符串中的每个单词倒转,python,string,Python,String,我的代码中有一个小问题。我正在尝试反转字词和字符串的字符。例如,“狗跑”会变成“ehT神纳” 代码几乎可以工作。它只是不添加空格。你会怎么做 def reverseEachWord(str): reverseWord="" list=str.split() for word in list: word=word[::-1] reverseWord=reverseWord+word+"" return reverseWord 你在正确的轨道上。主要问题是,“是一
def reverseEachWord(str):
reverseWord=""
list=str.split()
for word in list:
word=word[::-1]
reverseWord=reverseWord+word+""
return reverseWord
你在正确的轨道上。主要问题是,
“
是一个空字符串,而不是一个空格(即使您解决了这个问题,您可能也不希望在最后一个单词后面有空格)
以下是如何更简洁地执行此操作:
>>> s='The dog ran'
>>> ' '.join(w[::-1] for w in s.split())
'ehT god nar'
另一种方法是在单词中添加空格
reverseeword=reverseeword+word+”
,并使用.strip()
查看以下程序,了解如何在不使用联接/拆分的情况下使用它:
name=input('Enter first and last name:')
for n in name.split():
print(n[::-1],end=' ')
def reverse(sentence):
answer = ''
temp = ''
for char in sentence:
if char != ' ':
temp += char
continue
rev = ''
for i in range(len(temp)):
rev += temp[len(temp)-i-1]
answer += rev + ' '
temp = ''
return answer + temp
reverse("This is a string to try")
x=输入(“输入任何句子:”)
y=x.分割(“”)
对于y中的i:
r = i[::-1]
print(r,end=" ")
您还可以使用
re
模块处理字符串中的噪声:
>>> import re
>>> s = "The \n\tdog \t\nran"
>>> " ".join(w[::-1] for w in re.split(r"\s+", s))
'ehT god nar'
或者如果你不在乎:
>>> s = "The dog ran"
>>> re.sub(r"\w+", lambda w: w.group(0)[len(w.group(0))::-1], s)
'Teh god nar'
哈实际上与@aix相同。一般来说,“只写代码”的答案被认为是不好的做法。请稍微打开一点你的代码的作用以及它如何帮助解决问题。输入任何句子::::输入::男孩是女孩输出::yob si lrig
r = i[::-1]
print(r,end=" ")
>>> import re
>>> s = "The \n\tdog \t\nran"
>>> " ".join(w[::-1] for w in re.split(r"\s+", s))
'ehT god nar'
>>> s = "The dog ran"
>>> re.sub(r"\w+", lambda w: w.group(0)[len(w.group(0))::-1], s)
'Teh god nar'