class Conjugaison:
def Simple_Present(self):
self.group = {"Je":'e', "Tu":'es', "Il ou
Elles":'e' , "Nous":'ons' ,"Vous":'ez' ,"Ils ou Elles":'ent'}
self.verb = str(input("Enter a veb here:"))
for keys in self.group:
print(keys,self.verb[:-2]+self.group(keys))
Em1 = Conjugason()
Em1.Simple_Present()
当我运行上面的代码时,我得到的是:
Enter a verb here: entrer
Vous entrez
Tu entres
Ils ou Elles entrent
Il ou Elles entre
Nous entrons
Je entre
我应该是这样的: 我去。。。。。 主菜。。。。 我要去。。。。。 理性的入口。。。。。 请。。。。。。 我要走了。你知道吗
我不知道我哪里做错了。你知道吗
谢谢你!你知道吗
这里的类名是“Conjugaison” 但你在这里创造的对象是“魔术师” Em1=Conjugason()
调用与创建的类不同的类。你知道吗
字典是一个
unordered
关联表。 这意味着当您使用for-each循环遍历键值对时,不能依赖键值对的顺序。这不是你的错误,这是为字典设计的行为。你知道吗您可以有一个键列表,它将保持您喜欢的输出顺序:
但这并没有使用词典。 如果要玩和测试词典,可以编写以下内容:
我看到人们没有回答你问的问题。 当然,您调用的类有一个typo
Conjugason
而不是Conjugaison
,但是它不会在这里产生任何错误。你知道吗但是你在抱怨印刷顺序不对。 嗯,在Python中,标准字典是不排序的。你知道吗
我建议你用OrderedDict。这样,for循环将遵循创建字典时定义的顺序。你知道吗
附言:我是法国人,你可以加一个额外的逻辑。如果你的动词以元音开头,你需要用
J'
而不是Je
。 对于单数第三人称,它应该是Il ou Elle
,而不是Il ou Elles
。 这里还不需要类,你可以在类之外调用你的函数。你知道吗相关问题 更多 >
编程相关推荐