Pivy problem and some other stuff

  • Thread starter Bruno Desthuilliers
  • Start date
B

Bruno Desthuilliers

azrael a écrit :
Hy Guys

Did anyone manage to install and use Pivy. I'm trying it and cant come
closer to the goal I get the message:
Please set the COIN3DDIR environment variable to your Coin root
directory! ** Aborting **

Familiar to anyone?
I don't even know what Pivy is, but it obviously wants you to set an
environment variable (how you do so depends on your environment - on
most linux distros, and AFAIK on most unix systems, it's usually done in
your ~/.bash_profile file) named COIN3DIR and pointing to a directory !-)
 
A

azrael

Hy Guys

Did anyone manage to install and use Pivy. I'm trying it and cant come
closer to the goal I get the message:
Please set the COIN3DDIR environment variable to your Coin root
directory! ** Aborting **

Familiar to anyone?

And there is anoher question in my mind.
Is there a way to make a list in python which contains a series of
functions. I did'n try it. Something like:
def a():
return 1
def b():
return 2
def c():
return 3
def d():
return 4
list=[a(),b(),c(),d()]
list
[1,2,3,4]

I kow that for this kind of stuff this in not neccesarry, but for
other suff it, gets interesting.
 
M

Marc 'BlackJack' Rintsch

And there is anoher question in my mind.
Is there a way to make a list in python which contains a series of
functions. I did'n try it. Something like:

Why don't you just try!?
def a():
return 1
def b():
return 2
def c():
return 3
def d():
return 4
list=[a(),b(),c(),d()]
list
[1,2,3,4]

This isn't a list of functions but a list of results of function calls.
If you want the functions in that list then leave off the parentheses,
because those are the "call operator".

In [55]: def a():
....: return 1
....:

In [56]: def b():
....: return 2
....:

In [57]: funcs = [a, b]

In [58]: funcs
Out[58]: [<function a at 0xb7792e2c>, <function b at 0xb779e1ec>]

In [59]: funcs[0]()
Out[59]: 1

In [60]: funcs[1]()
Out[60]: 2

Ciao,
Marc 'BlackJack' Rintsch
 
S

Scott David Daniels

Marc 'BlackJack' Rintsch wrote:
A fine repy
In [57]: funcs = [a, b]
In [58]: funcs
Out[58]: [<function a at 0xb7792e2c>, <function b at 0xb779e1ec>]

In [59]: funcs[0]()
Out[59]: 1

In [60]: funcs[1]()
Out[60]: 2

and a "list comprehension" allows you to call these things no matter how
long the list is.

So after the above:
>>> results = [f() for f in funcs]
>>> print results
[1, 2]
 
A

azrael

Look, what I think about is this.
I'd like to make a multi dimensional list in which evry single element
would represent a function. By looping through the list I would
execute the functions. But not only that, it is possible to experiment
with recoursions.
the return 1 2 and 3 examples are just a examples. Of course that the
thing I'm thinking about is a little bit more complex.
 
Z

Zentrader

Marc 'BlackJack' Rintsch wrote:

A fine repy
In [57]: funcs = [a, b]
In [58]: funcs
Out[58]: [<function a at 0xb7792e2c>, <function b at 0xb779e1ec>]
In [59]: funcs[0]()
Out[59]: 1
In [60]: funcs[1]()
Out[60]: 2

and a "list comprehension" allows you to call these things no matter how
long the list is.

So after the above:
results = [f() for f in funcs]
print results
[1, 2]

You can also use exec, but someone will tell you that the sky is going
to fall if you do. I am one of the ones who think that calling a
function with
results = [f() for f in funcs]
doesn't "work" because it gives a meaningless error message that the
calling line didn't work. There is already enough discussion about
this, so if you use "some_string()" to call a function, wrap it in a
try/except with a traceback.
 
M

Marc 'BlackJack' Rintsch

You can also use exec, but someone will tell you that the sky is going
to fall if you do. I am one of the ones who think that calling a
function with
results = [f() for f in funcs]
doesn't "work" because it gives a meaningless error message that the
calling line didn't work.

What meaningless error message are you talking about!?

Ciao,
Marc 'BlackJack' Rintsch
 
Z

Zentrader

What meaningless error message are you talking about!?
Ciao,
Marc 'BlackJack' Rintsch

My mistake. It appears that this is no longer the case. And my
apologies. It was probably in version 2.3 or earlier that this was a
problem. Given the way that the Python community constantly improves
the language, I should have checked first, but "shoulds" don't count.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,755
Messages
2,569,537
Members
45,022
Latest member
MaybelleMa

Latest Threads

Top