Python Forum
Use Variables Generated from Functions in different files to use on the main file
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Use Variables Generated from Functions in different files to use on the main file
#1
I have a question. I am new in python and this is my 1st time to use python forum. I made lots of research in internet but I couldn't find what I am looking for. I will be very happy if you guide me to learn this issue to solve.

"Use Variables Generated from Functions etc in different files to use on the main file as a condition to do something"

Let's say we have three python files and two of them will be called in the main python file to print their values. But I would like to use that called values in the main.py file to do something else. A basic example; or you can add functions which return a value to see in the main.py to use that variable as a if condition to do something.

# config_x.py
x = 0
# mod_x.py
import config_x
config_x.x = 5
# main.py
import config_x
import mod_x
print(config_x.x) # It will show us 5 in the python shell

#I want to use that value of 5 to do something else in the main.py
new_x = config_x.x
if(new_x == 5):
   print("DO SOMETHING")
However, when I try something like that in the main.py, nothing is generated in python shell as DO SOMETHING print. Would you show me how we can do such thing ? thank you very much.
Reply
#2
assume a directory structure as follows (change to your specifications)
Output:
MyProject |__src main.py config_x.py mod_x.py
in the MyProject directory and the src directory add two files, both named __init__.py
now modify the __init__.py in MyProject, as below, and leave one in src empty
/MyProject
    __init__.py
    /src
        __init__.py
        config_x.py
        main.py
        mod_x.py
save all and rerun, it works on my end.

results:
Output:
$ python ./src/main.py 5 DO SOMETHING
Reply
#3
Use a function that returns a value.
## config_x.py
def set_to_five():
    return 5

## main.py
import config_x

return_value=config_x.set_to_five()
print(return_value)
Reply
#4
(Jan-01-2019, 01:55 AM)Larz60+ Wrote: assume a directory structure as follows (change to your specifications)
Output:
MyProject |__src main.py config_x.py mod_x.py
in the MyProject directory and the src directory add two files, both named __init__.py
now modify the __init__.py in MyProject, as below, and leave one in src empty
/MyProject
    __init__.py
    /src
        __init__.py
        config_x.py
        main.py
        mod_x.py
save all and rerun, it works on my end.

results:
Output:
$ python ./src/main.py 5 DO SOMETHING

I managed to do the same thing too now, thank you very much friend. You are a saviour, this is what I was looking for the last 2 days. Thank you very much
Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  How can i combine these two functions so i only open the file once? cubangt 4 804 Aug-14-2023, 05:04 PM
Last Post: snippsat
  HOW TO USE C# GENERATED DLL davide_vergnani 2 1,555 Jun-12-2023, 03:35 PM
Last Post: davide_vergnani
  File path by adding various variables Mishal0488 2 964 Apr-28-2023, 07:17 PM
Last Post: deanhystad
  Can I get some clarification on importing functions from external files. wh33t 3 859 Feb-25-2023, 08:07 PM
Last Post: deanhystad
  delete all files and subdirectory from a main folder mg24 7 1,526 Oct-28-2022, 07:55 AM
Last Post: ibreeden
  python run all py files from main py file mg24 6 1,248 Oct-12-2022, 04:41 AM
Last Post: mg24
  using variables with functions imported from different files. Scordomaniac 3 1,216 May-24-2022, 10:53 AM
Last Post: deanhystad
  Formating generated .data file to XML malcoverc 3 1,315 Apr-14-2022, 09:41 PM
Last Post: malcoverc
  Storing variables into one file for use in multiple Jupyter notebooks devansing 1 1,691 Feb-05-2022, 10:04 AM
Last Post: ibreeden
  Functions to consider for file renaming and moving around directories cubangt 2 1,698 Jan-07-2022, 02:16 PM
Last Post: cubangt

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020