weixin_42979701 2019-07-05 12:01 采纳率: 75%
浏览 1752
已采纳

python定义的函数怎么返回遍历的多个值,如果是返回多个字符串呢?

#第一个函数:
def A():             
                for i in range(3):
                                if i <3:
                                pass
                                print(i) #调用时输出结果是0,1,2
#第二个函数:
def A():
                for i in range(3):
                                if i <3:
                                pass
                return i #调用时输出结果是2

1、有什么办法可以让第二个函数使用return 也能够像第一个函数使用print那样输出3个值的结果

def B():
                for i in range(100):
                                if i <3:
                                            print("编号{},字符串A".format(i))
                                if 3<i<5:
                                            print("编号{},字符串B".format(i))
                                if i >5:
                                            print("编号{},字符串C".format(i))
                                            break

2、又如函数B,字符串如果用return该怎么返回

  • 写回答

1条回答 默认 最新

  • threenewbee 2019-07-05 12:10
    关注

    用yield返回

    # -*- coding: UTF-8 -*-
    
    
    def A():
        for i in range(3):
            if i <3:
                pass
            yield i
        return
    for i in A():
        print(i)
    

    也可以这样调用

    def A():
        for i in range(3):
            if i <3:
                pass
            yield i
        return
    
    itl = A()
    result = list(itl)
    print(result)
    
    

    如果问题解决,请点采纳

    def A():
        for i in range(100):
            if i < 3:
                yield ("编号{},字符串A".format(i))
            if 3<i and i<5:
                yield ("编号{},字符串B".format(i))
            if i >5:
                yield ("编号{},字符串C".format(i))
                break
        return
    
    itl = A()
    result = list(itl)
    print(result)
    

    如果问题解决,请点采纳

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 FPGA-SRIO初始化失败
  • ¥15 MapReduce实现倒排索引失败
  • ¥15 ZABBIX6.0L连接数据库报错,如何解决?(操作系统-centos)
  • ¥15 找一位技术过硬的游戏pj程序员
  • ¥15 matlab生成电测深三层曲线模型代码
  • ¥50 随机森林与房贷信用风险模型
  • ¥50 buildozer打包kivy app失败
  • ¥30 在vs2022里运行python代码
  • ¥15 不同尺寸货物如何寻找合适的包装箱型谱
  • ¥15 求解 yolo算法问题