假设:
data = 'this is a test string'鉴于你的问题描述得不是很清楚,下面考虑两种情况:
1、逐个字母反转:
>>> data[::-1]'gnirts tset a si 嫌升塌siht'笑敬
2、逐个单词反转:
>>> ' '.join(data.split()[::-1])'string test a is this'芹圆
在你所提问的内容中,你提供的代码很乱。我大概看了下,你的代码功能大概是反转字符串内容。主要工作代码是先把字符串转换为list,然后join起来,再把反转好的字符串输出到屏幕上。是这样吧?
但有一点你要注意:
你所在的python环境是2.7,而你写的代码环境是python3。你要在枝陪祥python2下执行是不成功的。
我没测试你的代码,因为时间的原因(主要是你的代码太乱,太糟糕!让回答者花不必要的时间去做不必要的思考。)
以下是我给你的一些参考,比如,按你的思路去做的话(定义一个函数,功能是先把字符串转换为list,然后join起来,再把反转好的字符串输出到屏幕上。)。代码我们可乱陆以这样写:
python3.6环境下
#因代码中有f-string格式,所以至少要python3.6环境#定义函数reverseStrtxt
def reverseStrtxt(strtxt):
newStrtxt =[] #初始化空列表
index = len(strtxt) #返回strtxt的项目数
while index:
index -= 1 #index=index-1
newStrtxt += strtxt[index] #newStrtxt=newStrtxt+strtxt[index]
return f'{"".join(newStrtxt)}' #返回反转后的字符串
if __name__=='__main__':
strtxt='hello,how are you ? Fine.'
print(reverseStrtxt(strtxt))
python2环境下
#可运行在python2环境下#定义函数reverseStrtxt
def reverseStrtxt(strtxt):
newStrtxt =[] #初始化空列表
index = len(strtxt) #返回strtxt的项目数
while index:
index -= 1 #index=index-1
newStrtxt += strtxt[index] #newStrtxt=newStrtxt+strtxt[index]
return "".join(newStrtxt) #返回反转后的字符串
if __name__=='__main__':
strtxt='hello,how are you ? Fine.'
print reverseStrtxt(strtxt)
我们把以上代码优化下:
python3环境
#可运行在python3环境下#定义函数reverseStrtxt
def reverseStrtxt(strtxt):
newStrtxt = '' #初始化空字符串
index = len(strtxt) #返回strtxt的项目数
while index:
index -= 1 #index=index-1
newStrtxt += strtxt[index] #newStrtxt=newStrtxt+strtxt[index]
return newStrtxt #返回反转后的字符串
if __name__=='__main__':
strtxt='hello,how are you ? Fine.'
print(reverseStrtxt(strtxt))
python2环境
#可运行在python2环境下#定义函数reverseStrtxt
def reverseStrtxt(strtxt):
newStrtxt = '' #初始化空字符串
index = len(strtxt) #返回strtxt的项目数
猛搏while index:
index -= 1 #index=index-1
newStrtxt += strtxt[index] #newStrtxt=newStrtxt+strtxt[index]
return newStrtxt #返回反转后的字符串
if __name__=='__main__':
strtxt='hello,how are you ? Fine.'
print reverseStrtxt(strtxt)
或
我们还可以更简单
#用切片的速度最快txtstr='hello, how are you ? Fine . '
str_lst=list(txtstr)
print(''.join(str_lst[::-1])) print('hello, how are you ? Fine . '[::-1])
要反转字符串的方法很多,但个人建议用切片,速度最快,而且代码简洁,易读。
其实python在这方面是很灵活的。
纯手工,如果对你有帮助,望采纳!
倒置字符串 将一句话的单词进行倒置,标点不倒置。比如 I like beijing. 经过函数后变为:beijing. like I解闭基题思路轿扒谨:
先将字符串整体逆置,然后再逆置以空格分隔的单词,这样就可以达到我们想要的效果。
例此租如:
输入:I like beijing.
输出:beijing. like I
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)