您好我正在尝试在循环中增加一个参数,但似乎无法正常工作。 Python只考虑我的第一个循环,Cp = 1:
Cp=0
track=2
variable=np.arange(track,1,6)
a=np.zeros(shape=(3,2))
for track in variable:
Cp=+1
if Cp==1:
eps=0.0
elif Cp==2:
eps=a(Cp-1,2)/2*3.14*track
tau=a(Cp-1,2)
print tau
else:
eps=0.003
Cp == 2的第二个循环从未考虑过?那么如何递增Cp ?? 我遇到的另一个问题是,由于我收到此错误,我的空数组a无法填充:
Traceback (most recent call last):
File "Main.py", line 35, in <module>
eps_real=a(Cp-0.5,2)/2*3.14*track
TypeError: 'numpy.ndarray' object is not callable
有什么想法吗?
感谢您的回答。
答案 0 :(得分:2)
您没有使用正确的复合运算符。您想要+=
而不是=+
>>> cp = 1
>>> cp +=1
>>> cp
2
>>> cp =+1
>>> cp
1
>>>
答案 1 :(得分:2)
您应该使用+=
运算符。 Cp=+1
仅将1分配给Cp。
您可以通过两种常见方式实现增量:
>>> cp = 0
>>> cp = cp + 1
>>> print cp
1
>>> cp += 1
>>> print cp
2
顺便提一下,请不要用大写字母来启动变量。类名通常以大写字母开头。如果你有两个单词变量,那么使用camel case命名。例如,如果您想将变量名称赋予变量,请使用myGoodVariable
。为了我的好班级使用MyGoodClass
。
答案 2 :(得分:0)
你可能想写Cp=Cp+1
或Cp+=1
而不是Cp=+1
!
答案 3 :(得分:0)
除了已经提到的,你应该考虑使用enumerate()内置。
for i, item in enumerate(L):
# ... compute some result based on item ...
L[i] = result
取自PEP279。