我是编程新手。我正在尝试编写一个代码来打印任何给定字符串的反转。我写了以下代码:
import math
string= raw_input ("Enter string")
n= len(string)
ol= n-1
for ol>-1,ol--:
print string[ol]
但我收到语法错误。请帮我解决这个问题。
我是编程新手。我正在尝试编写一个代码来打印任何给定字符串的反转。我写了以下代码:
import math
string= raw_input ("Enter string")
n= len(string)
ol= n-1
for ol>-1,ol--:
print string[ol]
但我收到语法错误。请帮我解决这个问题。
Python 非常努力地以可读的方式呈现代码。这意味着您不会得到许多其他语言(如 C)提供的丑陋、难以理解的快捷方式。相反,您可以获得其他更容易理解的快捷方式。
在python中循环一个范围的代码是:
for ol in range(n):
要向后迭代,请使用
for ol in range(n-1,-1,-1):
但当然,有人无法抗拒并为该语言添加了一个不可读的快捷方式:
print string[::-1]
有关的:
您可以使用这些链接进行进一步的工作,我知道这个答案超出了主题:
世界各地的人们都在使用 Codecademy 进行学习。
艰难地学习 Python,第 3 版
免费的交互式教程可帮助您在浏览器中发现 Python 习语!
如果你想自己编码字符串反转,也试试这个。当您反转非常大的字符串时,这将很有用。你只需要遍历它的一半。
Data = list("ABCDEF")
Len = len(Data)
for i in range(Len//2):
Data[i], Data[Len - i - 1] = Data[Len - i - 1], Data[i]
Data = ''.join(Data)
print Data
注意:此解决方案仅用于学习。出于实际目的,请使用@Aaron Digulla 的第三个选项。它将提供比其他任何东西更好的性能。它被称为切片。在这里阅读它http://docs.python.org/2/tutorial/introduction.html#strings
print string[::-1]