python - 如何防止for循环停止?

标签 python pandas loops for-loop

在我的 for 循环中,当 if 语句都为 true 时,它​​会执行预期的操作,然后结束并且不会继续执行整个循环。我尝试在柜台买入和卖出后使用 continue 语句。它在存储变量的总和时起作用,但随后我在返回变量上收到一个错误,显示内置模块的 NoneType 对象。

如果我省略 continue 语句,它只会存储与 if 语句匹配的第一个价格,但它会中断并停止对与这些语句匹配的其他价格进行求和。

我知道问题是在添加计数器后它从 for 循环中中断,也许返回值缩进得很严重?

buy = 0
sell = 0
def checking(x,y):
    for i in range (17):
        if x[i]>x[i-1]:
            if y[i] >y[i-1]:
                global buy, sell
                buy += y[i]
                try:
                    sell +=y[i+1]
                except:
                    sell +=y[i]

                continue
                return sell-buy

gains = checking(volume,close)

gains

我需要创建一个读取 2 个数据帧的函数,一个是股票的交易量,另一个是收盘价。我希望该函数检查今天的成交量是否大于昨天的成交量,如果是,则进入另一个 if 语句,询问今天的收盘价是否大于昨天的收盘价。如果这也成立,那么它将在“买入”变量中存储并汇总这些天的价格,并将 [i+1] 之后一天的价格存储在“卖出”变量中并对其求和。最后它返回两者之间的差异。

最佳答案

你是对的,返回语句的缩进不正确。这是固定代码:

buy = 0
sell = 0
def checking(x,y):
    for i in range (17):
        if x[i]>x[i-1]:
            if y[i] >y[i-1]:
                global buy, sell
                buy += y[i]
                try:
                    sell +=y[i+1]
                except:
                    sell +=y[i]

    return sell-buy

gains = checking(volume,close)

关于python - 如何防止for循环停止?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55368508/

相关文章:

python GC - 引用计数仅在 gc.collect() 时有效?

python - 按字母顺序列出动物以及哪种动物打败谁

Python尝试将字符串写入文件然后读取字符串并进行eval,但是出了问题

python - 当选择和更新都存在复杂条件时,更新数据框的最快方法是什么?

python - Pandas:处理测试中看不见的数据

python - opencv 和 numpy 调整大小函数之间的区别

python - 如何用另一个匹配行的结果填充 NaN?

iphone - 如何遍历 UIView 的所有 subview 及其 subview 及其 subview

c# - 如何最好地删除 C# 中循环中的列表项

c++ - 在结构中搜索具有相似属性的数据