Codecademy Python – “Almost Oneday”
最近在学习Codecademy中的python,可以对python有个全面简单的了解,开始很简单,但是做到PygLatin的“Almost Oneday!”这节时,发现总是有问题,查了一些资料,总算找到原因了,这个脚本相当于是对字符串部分做的一个小总结。
需求:
1. 提示用户输入内容,只能是英文字母,如果为空或者数字则提示(既有数字又有字母没有做判定,都算是非字母)
2. 判断用户输入的字符串首字母是否为元音
3. 如果为元音,则在字符串后加上“ay”,E.g:如果用户输入“area”->“areaay”
4. 如果首字母为辅音字母,则将该字符串首字母移动结尾,并加上“ay”,Eg:如果用户输入“test”->“esttay”
代码:
pyg = "ay" original = raw_input('Enter a word, all string must alpha:') #等待用户输入 word = original.lower() #用lower函数把大写变成小写,以统一格式 first = word[0] #字符串切片,从0开始计数,把第一个字符切下来赋给first new_word = word + pyg if len(original) > 0 and original.isalpha(): #判定如果是空字符或者字符串非全英文 #isalpha函数返回True或False if first == 'a' or first == 'i' or first == 'o' or first == 'u' or first == 'e': print new_word else: new_word = word[1:] + first + pyg print new_word else: print 'empty or not full alpha!'
测试结果:
辅音字符 Consonant:
Enter a word, all string must alpha: test esttay None
元音字符 Vowel:
Enter a word, all string must alpha: area areaay None
版权声明:
本文链接:Codecademy Python – “Almost Oneday”
版权声明:本文为原创文章,仅代表个人观点,版权归 Frank Zhao 所有,转载时请注明本文出处及文章链接