为了账号安全,请及时绑定邮箱和手机立即绑定

请教老师个问题,这个程序我这么写可以吗

def toUppers(L):

    for x in L

         if isinstance(x,str)==true:

         return x

  print toUppers(['Hello', 'world', 101])


正在回答

2 回答

不是老师,希望不要介意。你的程序语法和逻辑上不正确:1.for语句最后少了冒号":",应为for x in L : 2.isinstance(x,str)这个方法的返回值本身就是布尔类型的, (你这里没必要再一次判断是否等于True,况且python里面不是小写true,注意T大写)3.如果符合if条件,那么你的结果只有第一个是字符串的list元素变成了大写,因为这里return语句之后就会跳出循环,结束调用。如果要按照你的思路实现,代码应该是这样的:
def toUpper(L):
    l = []
    for x in L:
        if isinstance(x,str):
            l.append(x.upper())
        else:
            l.append(x)
    return l
最后,要想知道自己的代码是否正确,你自己跑一下代码就知道了。

2 回复 有任何疑惑可以回复我~

上面打漏了。

def toUppers(L):

    for x in L

         if isinstance(x,str)==true:

            return x.upper ()

  print toUppers(['Hello', 'world', 101])


0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
初识Python
  • 参与学习       758625    人
  • 解答问题       8667    个

学python入门视频教程,让你快速入门并能编写简单的Python程序

进入课程

请教老师个问题,这个程序我这么写可以吗

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信