想请问一下大佬们,用python实现两个列表元素中相同元素后显示一行英文,不同元素后显示一行英文为啥会出现这种问题呢

favorite_languages = {

'jen': 'python',
'sarah': 'c',
'edward': 'ruby',
'phil': 'python',
}
friend=['phil','sarah']

for name in favorite_languages.keys():

print(name.title())

if name in friend:
    print(" Hi " + name.title() + 
        ", I see your favorite language is " +
        favorite_languages[name].title() + "!")
if name not in friend:
    print(name.title()+",we invite you to our party")

这是显示的问题:

图片说明

但是没有第二个if就没有这种问题。。

图片说明

    print(" Hi " + name.title() + 
        ", I see your favorite language is " +
        favorite_languages[name].title() + "!")
    这里不要换行,写一起试试看

    print(name.title())
    这里前面加上缩进

    python需要严格缩进匹配才能运行

完全可以用if else来弄啊,你第二个if不就相当于else吗