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

Python

def toUppers(L):

    for x in L:

        if [isinstance(x, str)]:

             return [x.upper()]

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

求大神指教 为什么这个就只打印出一个['HELLO']

正在回答

3 回答

因为return执行一次就返回了

http://img1.sycdn.imooc.com//5ab31ce70001d70802660172.jpg

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

一旦执行return时,函数就结束了。所以当第一次执行return [x.upper()]时,x="hello".第二个元素还未迭代就结束了

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

在迭代到'hello'的时候判断'hello'是字符串然后返回了'hello'.upper()

这样就退出了 toUppers()函数

我受C的影响比较深,可能不对,参考一下

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

举报

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

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

进入课程
意见反馈 帮助中心 APP下载
官方微信