【问题标题】:Python, help me with this algo structure [closed]Python,帮我解决这个算法结构[关闭]
【发布时间】:2020-05-08 17:12:13
【问题描述】:

我有以下变量:

x={'Var_1': [a1,a2,....a13],]}
y={'Var_2': [b1,b2,....b13],]}
z={'Var_3': [c1,c2,....c13],]} 

我想计算由以下算法给出的 z

for i in x

    If x [i] > 0 ==> z= 0 
    if y[i-1] > - x[i] ==> z = - x[i]
    else   z = y[i-1]

我是 python 新手,我不知道如何获得变量 z 而不会出错。以这种格式获取结果很重要:z={'Var_3': [c1,c2,....c13],]}

【问题讨论】:

  • 当您说z 时,它是z[i] 吗?是什么给你带来了麻烦?
  • x[i] 将是一个列表,而不是一个可以与 0 比较或否定的数字。
  • xyz 的结构不清楚。 dict 中是否有多个键(为什么在末尾附近有一个 ,])?如果不是,for i, val in enumerate(x['Var_1']): if val > 0 ... if y['Var_2'][i] ... 可能更接近您的想法。目前尚不清楚您想要什么以及您为实现目标所做的努力。
  • 我们可以将 x y 和 z 视为只有一个键的字典。单个值(a1 b1 c1 等等都是数字)

标签: python python-3.x list algorithm dictionary


【解决方案1】:

假设它的 z['Var_3'] 列表

for index,xi in enumerate(x['Var_1']):
      if xi > 0:
        z['Var_3'][index] = 0
      else if y['Var_2'][index - 1] > -xi:
        z['Var_3'][index] = -xi
      else:
        z['Var_3'][index] = y['Var_2'][index-1]

【讨论】:

    猜你喜欢
    • 2022-06-15
    • 1970-01-01
    • 1970-01-01
    • 2012-10-30
    • 2018-08-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-09
    相关资源
    最近更新 更多