【问题标题】:for-loops in python (basic)python中的for循环(基本)
【发布时间】:2020-11-30 22:05:19
【问题描述】:

是否可以使用单独的 for 循环创建两个函数,但第二个函数得到第一个函数的作用?我有一个非常简单的例子:

a = [1,2,3,4]

def func():
    for i in a:
        if i == 1:
            continue

def func2():
        func()
        for i in a:
            print(i)

print(func2())

第二个函数的问题是它没有“得到”第一个函数的作用。我该如何解决这个问题?我希望第二个函数获取第一个函数,以便继续处理语句。

【问题讨论】:

  • 你能把第一个循环的结果保存到一个列表中吗?
  • 你所说的'get'是什么意思?
  • 这个问题有点不清楚,至少对我来说。你能解释一下你想要得到什么输出吗?
  • 第一个函数做了什么,你希望调用者可以看到?

标签: python python-3.x for-loop continue


【解决方案1】:

要将信息从一个函数传递到另一个函数,第一个函数需要return

def func(a):
    r = []
    for i in a:
        if i == 1:
            continue
        r.append(i)
    return r

def func2(a):
    r = func(a)
    for i in r:
        print(i)

func2([1, 2, 3, 4])

【讨论】:

  • FWIW,你可以重写func作为理解:return [i for i in a if i != 1]
猜你喜欢
  • 1970-01-01
  • 2015-04-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-02-08
  • 1970-01-01
  • 2023-01-25
相关资源
最近更新 更多