我有一个充满文字的文字文件。我需要浏览文本文件并计算按字母顺序拼写的单词数。我正在努力想办法判断一个单词是否按字母顺序排列。
我已经环顾四周,已经看到它可以通过排序完成。但是,我们还没有在课堂上学习排序,所以我不能使用它。帮助/提示非常感谢。
我是否需要做一些事情,例如将字母表中的每个字母分配一个数字?
答案 0 :(得分:5)
如果(并且仅当)每个相邻的字母对按字母顺序排列,则字词按字母顺序排列。
答案 1 :(得分:5)
信不信由你,所有字符都已经隐式分配了一个数字:它们的ASCII字符代码。您可以使用ord()
功能访问它们,或直接比较它们:
>>> "a" > "b"
False
>>> "b" > "a"
True
请注意,大写字母编码为65 - 90,而小写字母编码为97 - 122,所以:
>>> "C" > "b"
False
您必须确保比较所有大写或全部小写字母。
这是一个可能的函数,它使用上面的信息来检查给定的字符串是否按字母顺序排列,只是为了让你开始:
def isAlphabetical(word):
for i in xrange(len(word) - 1):
if word[i] > word[i+1]:
return False
return True