Python程序输出不正确?
我最近开始学习如何使用Codecademy.com网站用Python编程,它使用的是Python2.7,虽然我已经在我的计算机上安装了2.7.3和3.3.2,但我正在用Python3创建程序 这个程序本身是一个简单的小概念证明,来自网站上的课程,一个猪拉丁翻译。我决定更进一步,将其开发为处理整个文本段落,包括空格和其他类似实例,而不是程序最初只处理一个单词 我现在的问题是,无论我输入什么,程序只输出相同的东西,我不知道为什么 它只输出“This not finished”(这还没有完成)。打印代码,这是多个单词的实例,显然还没有完成 代码如下:Python程序输出不正确?,python,python-3.x,Python,Python 3.x,我最近开始学习如何使用Codecademy.com网站用Python编程,它使用的是Python2.7,虽然我已经在我的计算机上安装了2.7.3和3.3.2,但我正在用Python3创建程序 这个程序本身是一个简单的小概念证明,来自网站上的课程,一个猪拉丁翻译。我决定更进一步,将其开发为处理整个文本段落,包括空格和其他类似实例,而不是程序最初只处理一个单词 我现在的问题是,无论我输入什么,程序只输出相同的东西,我不知道为什么 它只输出“This not finished”(这还没有完成)。打印代
pyg = 'ay'
raw_input = input('Enter your text here. Numbers are not allowed. ')
if len(raw_input) > 0 and raw_input.replace(' ', '').isalpha:
lower_input = raw_input.lower()
if lower_input[0] == " ":
lower_input = lower_input[1:]
word_spacing = lower_input.replace(' ', '/')
if word_spacing.find('/'):
print('This isn\'t finished yet.')
else:
first_letter = raw_input[0]
if first_letter == 'a' or 'e' or 'i' or 'o' or 'u':
output = raw_input[1].upper() + raw_input[2:] + first_letter + pyg
print(output)
else:
output = raw_input[0].upper() + raw_input[1:] + pyg
print(output)
else:
print('The text you entered is invalid.')
end = input('Press Enter to exit')
如果有人能通读代码并帮我调试,那将非常有帮助。已经盯着它看了一段时间了,但仍然没有得到它。raw\u input.replace('',).isalpha
您没有调用函数isalpha
,只引用了它。添加()
如果第一个字母=='a'或'e'或'i'或'o'或'u':
同:
如果(第一个字母=='a')或('e')或('i')或('o')或('u'):
这将始终为真,因为非空字符串被视为真
将其更改为:
如果“aeiou”中的第一个字母:
您还忘记缩进
打印('您输入的文本无效')
底部。最后一个else块缺少匹配的if。省略最后一个“else:”,它可能会起作用。嗯,这里的格式很奇怪,必须习惯它。在我的原始代码中,缩进都是正确的,我将在以后提交时更好地检查它。谢谢你的帮助。@Dashsite没问题:)。别忘了:)