On Oct 14, 9:09 am, leo zhao <lifeof...@gmail.com> wrote: > I try to a run a python numpy programe, however the python can't run > this program. > my python version is 2.6.2 , numpy version is 1.3.0, however, the > program can run in previous numpy version(1.2.0), who can help me to > solve the problem, I will deeply appreciate! > the program is below: > > import sys > import os > from datetime import * > from random import * > from numpy import *
Possibly nothing to do with your immediate problem, but 'from amodule import *' is not recommended ... just import the objects that you need. > import py4cs.multipleloop as mp > > class ConsProd(object): > total_production =[0.0,0.0,0.0] > tech = 1.0 > goods =['z','x','y'] Lists as class attributes? Are you sure that that's what you want? > def __init__(seld,identifier): Typo above: seld instead of self. This and other problems mentioned below make it hard to believe this code runs with any version of anything. > self.identifier = identifier > self.demand_veector = array([0.0,0.0] veector or vector? You are missing a ")" from the end of the above line. That should cause a syntax error when it hits the ":" in the next line. > if len(G.cps1) > number_of_1individuals: G is not defined. number_of_1individuals is not defined. > self.make = ConsProd.goods[0] > self.tech = ConsProd.tech > self.gross_production = (self. tech*G.L,0.0,0.0) > ConsProd.total_production[0] += self.gross_production > [0] > G.cps1[self] = self.gross_production[0] self as a dictionary key?? Have supplied a __hash__ method for the class? > elif number_of_1individuals >= len(G.cps1) and len(G.cps2) < > number_of_2indibiduals: number_of_2indibiduals or number_of_2individuals?? In any case, neither of these is defined. > self.make = ConsProd.goods[1] > self.tech = ConsProd.tech > self.gross_production = (0.0,self. tech*G.L,0.0) > ConsProd.total_production[1] += self.gross_production > [1] > G.cps2[self] = self.gross_production[0] > else: > self.make = ConsProd.goods[2] > self.tech = ConsProd.tech > self.gross_production = (0.0,0.0,self. tech*G.L) > ConsProd.total_production[2] += self.gross_production > [2] > G.cps3[self] = self.gross_production[2] > > the hint is the small window at python: What is "the small window at python"?? > > syntax error: > There' an error in your program: invalid syntax. I doubt that that is an exact copy of the error message. You haven't included a copy of the line where the syntax error is alleged to occur. If you provide an exact copy of the error message etc that you see on your screen (use copy/paste), we should be able to help you. Note that if you have a Python syntax error, it is very unlikely that it would "work" with one version of Numpy and not "work" with another version -- unless of course you have changed the source code between Numpy versions. HTH, John -- http://mail.python.org/mailman/listinfo/python-list