Python:如何从条件返回结果,然后重新输入条件语句

和谐的

提前感谢您的帮助。我的if else陈述有问题。下面是我的代码。基本上,如果else:输入,则意味着没有数据,并且我的其余代码不应运行。我需要做的是,当else:输入时,我需要它返回新的randx和randy值,然后将其重新输入到中if (dem_arr[randx, randy] > -100):我尝试使用时没有成功。

neighbors = [(-1,-1), (-1,0), (-1,1), (0,1), (1,1), (1,0), (1,-1), (0,-1)]
mask = np.zeros_like(dem_arr, dtype = bool)
stack = [(randx, randy)] # push start coordinate on stack
counterStack = [(randx, randy)]

if (dem_arr[randx, randy] > -100):
    count = 0
    while count <= 121:
        x, y = stack.pop()
        mask[x, y] = True
        for dx, dy in neighbors:
            nx, ny = x + dx, y + dy
            if (0 <= nx < dem_arr.shape[0] and 0 <= ny < dem_arr.shape[1] and dem_arr[x, y] > -100 and dem_arr[nx, ny] > -100 and not mask[nx, ny] and abs(dem_arr[nx, ny] - dem_arr[x, y]) <= 5):    #set elevation differnce
                stack.append((nx, ny))  #if point is selected (true) array position gets added to stack and process runs over again
                if ((nx, ny) not in counterStack):
                    counterStack.append((nx, ny)) 
                    dem_copy[(nx, ny)] = 8888
                    dem_copy[randx, randy] = 8888
                    count += 1
else:   #if enters else then need new randx and new randy points need to be returned and re-enter the above if(dem_arr...)
    print 'Point chosen has no data'
    randx = random.randint(0, row-1)
    randy = random.randint(0, col-1)

谢谢您的帮助。

-R

皆川敬

像这样修改您的代码。

前:

if (dem_arr[randx, randy] > -100):
    ...
else:
    ...

后:

while(True):
    if (dem_arr[randx, randy] > -100):
        ...
        break#break from this while-loop.
    else:
        ...
        continue#go back and continue this while-loop.

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何根据输入条件进行输出

来自分类Dev

根据codeigniter中的输入条件返回行

来自分类Dev

根据codeigniter中的输入条件返回行

来自分类Dev

样式的表单输入条件

来自分类Dev

如果用户输入条件

来自分类Dev

如何在yii find()中输入条件?

来自分类Dev

如何在 df.assign 中输入条件?

来自分类Dev

根据用户输入条件删除行(Pandas,Python 3)

来自分类Dev

根据用户输入条件删除行(Pandas,Python 3)

来自分类Dev

优化Redshift查询的大输入条件

来自分类Dev

Php Post方法未输入条件

来自分类Dev

Microsoft Access查询输入条件

来自分类Dev

基于键盘输入条件的循环

来自分类Dev

如何根据输入条件过滤已经包含NaN的数据框?

来自分类Dev

如何修复 Python 中标记输入的条件语句?

来自分类Dev

如何创建基于条件(IF语句)返回不同结果集的T-SQL语句

来自分类Dev

Yii2 ActiveRecord:复合输入条件

来自分类Dev

Angular 6 - *ngIf 输入条件是添加 attr readonly

来自分类Dev

Excel公式返回与条件匹配的范围,然后对结果进行COUNTIF

来自分类Dev

用户输入的条件语句

来自分类Dev

闪亮:当通过actionButton评估输入条件时,如何更改输出(可视数据变为警告消息,反之亦然)

来自分类Dev

如何使用Knockout JS Array Map根据输入条件使选择选项绑定默认为默认值?

来自分类Dev

具有不同匹配条件的Cypher语句返回相同的结果

来自分类Dev

Power Query-具有多个输入条件的条件列

来自分类Dev

Python:如何根据条件语句序列的结果将元素输出到特定列

来自分类Dev

条件语句产生奇怪的结果?

来自分类Dev

SQL语句通过管道传递到基于条件返回的条件拆分结果

来自分类Dev

你如何每天用 Pandas 中的条件语句重新采样

来自分类Dev

如何基于Python中的特定用户输入来循环条件语句?

Related 相关文章

  1. 1

    如何根据输入条件进行输出

  2. 2

    根据codeigniter中的输入条件返回行

  3. 3

    根据codeigniter中的输入条件返回行

  4. 4

    样式的表单输入条件

  5. 5

    如果用户输入条件

  6. 6

    如何在yii find()中输入条件?

  7. 7

    如何在 df.assign 中输入条件?

  8. 8

    根据用户输入条件删除行(Pandas,Python 3)

  9. 9

    根据用户输入条件删除行(Pandas,Python 3)

  10. 10

    优化Redshift查询的大输入条件

  11. 11

    Php Post方法未输入条件

  12. 12

    Microsoft Access查询输入条件

  13. 13

    基于键盘输入条件的循环

  14. 14

    如何根据输入条件过滤已经包含NaN的数据框?

  15. 15

    如何修复 Python 中标记输入的条件语句?

  16. 16

    如何创建基于条件(IF语句)返回不同结果集的T-SQL语句

  17. 17

    Yii2 ActiveRecord:复合输入条件

  18. 18

    Angular 6 - *ngIf 输入条件是添加 attr readonly

  19. 19

    Excel公式返回与条件匹配的范围,然后对结果进行COUNTIF

  20. 20

    用户输入的条件语句

  21. 21

    闪亮:当通过actionButton评估输入条件时,如何更改输出(可视数据变为警告消息,反之亦然)

  22. 22

    如何使用Knockout JS Array Map根据输入条件使选择选项绑定默认为默认值?

  23. 23

    具有不同匹配条件的Cypher语句返回相同的结果

  24. 24

    Power Query-具有多个输入条件的条件列

  25. 25

    Python:如何根据条件语句序列的结果将元素输出到特定列

  26. 26

    条件语句产生奇怪的结果?

  27. 27

    SQL语句通过管道传递到基于条件返回的条件拆分结果

  28. 28

    你如何每天用 Pandas 中的条件语句重新采样

  29. 29

    如何基于Python中的特定用户输入来循环条件语句?

热门标签

归档