python - 更新变量的值?

标签 python

考虑以下代码:

l=[21,23,25,30,33,45,56,67,70,77--------------------]
h=35
r1=[]; r2=[]
for i in range(len(l)):
   if(l[i] < h):
      r1.append(l[i])
   else:
      r2.append(l[i])
print r1
print r2

得到的结果是:

[21, 23, 25, 30, 33]
[45, 56, 67, 70, 77----------------------]

现在我需要增加 h=35 以便当它达到 46 时它的输出必须是

[21, 23, 25, 30, 33,45]
[56, 67, 70, 77----------------------]

下一步当h达到57

[21, 23, 25, 30, 33,45,56]
[67, 70, 77-------------------------]

所以作为一个整体,最终结果应该显示:

[21, 23, 25, 30, 33]
[45, 56, 67, 70, 77-----------------]

[21, 23, 25, 30, 33,45]
[56, 67, 70, 77---------------]

[21, 23, 25, 30, 33,45,56]
[67, 70, 77--------------]

[21, 23, 25, 30, 33,45,56,67]
[70, 77--------------]

[21, 23, 25, 30, 33,45,56,67,70]
[77--------------]

[21, 23, 25, 30, 33,45,56,67,70,77]
[-----------------------]

什么会在 python 中产生这样的结果而不将其作为函数参数传递?任何人都可以建议它的代码............

最佳答案

除了jimifiki的回答,代码可以简化,更pythonic。

def funct(h):
    l = [21,23,25,30,33,45,56,67,70,77]
    r1=[]; r2=[]
    for x in l:
        if x < h:
           r1.append(x)
        else:
           r2.append(x)

    print r1
    print r2

for h in (35,45,55,65):
    funct(h) 

关于python - 更新变量的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18328513/

相关文章:

python - 如何在python中使用最新的sqlite3版本

python - 如何设置解析电子邮件?

python - 用数组替换 pandas 列值

python - 如何测量这个哲学家就餐程序(python)的执行时间?

python - 在不使用 sys.exit() 的情况下关闭 ipython 笔记本中的 pyqt 小部件

python - 从tfrecords导入数据时批处理后标签顺序错误

python - TensorFlow 连接/堆叠 N 个张量交错最后一个维度

python - 立即加载 django 自定义模板标签

python - Numpy einsum 表现不佳。需要注意什么?

python - 在 Windows XP 上运行 Python CGI 脚本