python - Python:运行一个程序来反转任何给定单词的顺序
问题描述
我正在尝试在 Python 中创建一个程序,它接受任何输入的单词并反转顺序,并以相反的顺序打印单词。但我没有得到想要的结果。这是我正在使用的代码:
myString = input("Enter any String: ")
length = len(myString)-1
reverse = []
i = 0
while length>=0:
reverse.append(myString[length])
length -=1
while length<0:
break
print(reverse)
reverseString = ''
j = 0
while j<=length:
reverseString +=reverse[j]
j+=1
while j> length:
break
print(reverseString)
在输出中,我只看到这个:
Enter any String: De Costa
['a', 't', 's', 'o', 'C', ' ', 'e', 'D']
而不是预期的:' atsoC eD '
我哪里错了?
解决方案
这是因为您的长度变量变为 0,因为您在第一个循环中将其递减,因此 reverseString 的循环永远不会运行,因此 reverseString 始终具有值 '',您必须重新初始化长度变量以便循环运行。为此,请在length = len(myString)-1
下面 添加reverseString = ''
或者简单地说,这个
myString = input("Enter any String: ")
length = len(myString)-1
reverse = []
i = 0
while length>=0:
reverse.append(myString[length])
length -=1
while length<0:
break
print(reverse)
reverseString = ''
length = len(myString)-1
j = 0
while j<=length:
reverseString +=reverse[j]
j+=1
while j> length:
break
print(reverseString)
推荐阅读
- c - 为什么 glibc 的 __random_r 分配变量会立即覆盖?
- python-3.x - 图像无法从 python 脚本访问,但可以在浏览器中访问
- performance - 如果有很多数据,PrimeNG 数据表的性能非常慢
- android - 未播放通知声音。权限拒绝
- java - REST 应用程序中 Camunda 进程的前提条件
- python - 如何在多个数据框上进行左连接
- google-chrome-extension - 如何自动启用 Chrome 扩展程序?
- c - C 布尔类型函数总是返回 FALSE
- apache-spark - Spark - 从 S3 读取分区数据 - 分区是如何发生的?
- html - div 容器应由图像计算尺寸包裹