skrapsan
skrapsan

Reputation: 11

import script value in different script with new results (diceroller)

I'm learning to write python to create scripts to automate stuff for DD. And I'm positive that there most likely is a built in solution for this.

I have certain functions from external scripts that I would like to call several times.

For example, let's say I have a script called d6.py that says.

import random
d6 = random.randint(1,6)

I then import that script in my other script called diceroller.py to use.

from d6 import *

print (d6)
print (d6)

How do I make the print statement return different values?

I have tried to search using several search terms, but I think I lack the programming "vocabulary" to know how to find the solution.

Upvotes: 1

Views: 28

Answers (1)

Mureinik
Mureinik

Reputation: 312086

Your code executes random.randint(1,6) once, and assigns the result to d6. Once assigned, d6 is just a number, no matter how many times you import it. Instead, you should define it as a function:

def d6():
    return random.randint(1,6)

and then call it as needed:

from d6 import *

print (d6())
print (d6())

Upvotes: 1

Related Questions