qq_37198052 2018-11-13 06:39 采纳率: 0%
浏览 1144
已结题

新手关于len()问题,请求解答

favorite_languages={
'jen':['python','ruby'],
'sarah':['c'],
'edward':['ruby','go'],
'phil':['python','haskell'],
}
for name,languages in favorite_languages.items():
print("\n"+name.title()+"'s favorite languages are:")
for language in languages:
print("\t"+language.title())

#if str(len('sarah'))==1:
print("Sarah's favorite language is C.")

    要求在for循环开头添加一条if语句,通过查看len(languages)的值来确定当前的被调查对象喜欢的语言是否多种,如果喜欢多种,就像以前一样显示输出;如果就一种,就相应的修改措辞,显示Sarah's favorite language is C.

    我不知道这句话如何去理解,if后面如何对一个字典中的值列表进行确认数字!求大神能给与解答~(上面带#是我自己的理解,但是执行的时候什么都不显示,编译是成功的!估计还是有问题)

对于键-值对 单独显示 我不知道是否这样的语句是就省略的~
for name,languages in favorite_languages.items():
for language in languages:
print("\t"+language.title())

for language in favorite_languages.keys():
print(language.title())

  • 写回答

2条回答 默认 最新

  • Italink 2018-11-13 08:42
    关注

    我懂你的意思了,你是想区分is和are,对吧,可以这样改,排版我帮你做了一点修改

    favorite_languages={
    'jen':['python','ruby'],
    'sarah':['c'],
    'edward':['ruby','go'],
    'phil':['python','haskell'],
    }
    for name,languages in favorite_languages.items():
        print("\n%40s" % (name.title()+"'s favorite languages"),end="")
        if(len(languages)==1):
            print(" is :",end=" ");
        else:
             print(" are:",end=" ");
        for language in languages:
            print(language.title(),end="\t")
    

    图片说明

    评论

报告相同问题?

悬赏问题

  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog