Python Forum
Is it possible to create a variable with the name of an output of another variable
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Is it possible to create a variable with the name of an output of another variable
#1
I'm making a console application, and i want to create a feature where you can create your own command if you feel like it's needed. Here is my code:
else:
        print('Unknown command entered. Would you like to give this command a meaning')
        temporary_console_input = console
        console = input('Y or N? ')
        creating_new_command_temp_waiting = True
        while creating_new_command_temp_waiting == True:

            if console == 'y':
                # Placeholder
            else if console == 'Y':
                # Placeholders
            else if console == 'n':
                # Placeholders
            else if console == 'N':
                # Placeholders
            else if console == 'sys.exit(0)':
                print('Shutting down')
                sys.exit(0)
            else:
                print('Unknown Option Entered. Please try again.')
        creating_new_command_temp = console
        logger.info('Creating command: "' + console + '"')
I would like to know if there is a way to create a variable with the name of console's current state. (e.g. if console is set to 4, create a variable named 4)
Self-taught HTML, CSS, Python, and Java programmer
Reply
#2
Valid Python name must start either with a letter or underscore(s) - it cannot start with a digit.

There are several possible methods to create a variable name dynamically - and none of them is recommended. One of them - by use of globals and locals functions
Test everything in a Python shell (iPython, Azure Notebook, etc.)
  • Someone gave you an advice you liked? Test it - maybe the advice was actually bad.
  • Someone gave you an advice you think is bad? Test it before arguing - maybe it was good.
  • You posted a claim that something you did not test works? Be prepared to eat your hat.
Reply
#3
(Jun-04-2018, 11:19 PM)volcano63 Wrote: Valid Python name must start either with a letter or underscore(s) - it cannot start with a digit.

There are several possible methods to create a variable name dynamically - and none of them is recommended. One of them - by use of globals and locals functions

I know that, it was an example. Can you just tell me how i would create a variable with the name of another variable's value?
Self-taught HTML, CSS, Python, and Java programmer
Reply
#4
Output:
In [14]: a = 'c' In [15]: globals()[a] = 1 In [16]: c Out[16]: 1 In [17]: b = 'd' In [18]: exec('{} = 10'.format(b)) In [19]: b Out[19]: 'd' In [20]: d Out[20]: 10
Test everything in a Python shell (iPython, Azure Notebook, etc.)
  • Someone gave you an advice you liked? Test it - maybe the advice was actually bad.
  • Someone gave you an advice you think is bad? Test it before arguing - maybe it was good.
  • You posted a claim that something you did not test works? Be prepared to eat your hat.
Reply
#5
(Jun-04-2018, 11:37 PM)volcano63 Wrote:
Output:
In [14]: a = 'c' In [15]: globals()[a] = 1 In [16]: c Out[16]: 1 In [17]: b = 'd' In [18]: exec('{} = 10'.format(b)) In [19]: b Out[19]: 'd' In [20]: d Out[20]: 10

Is this like 'put in line 16 instead of 1', or 'put in line 17'?
Self-taught HTML, CSS, Python, and Java programmer
Reply
#6
Line 15 creates variable with name c, line 18 - with name d
Test everything in a Python shell (iPython, Azure Notebook, etc.)
  • Someone gave you an advice you liked? Test it - maybe the advice was actually bad.
  • Someone gave you an advice you think is bad? Test it before arguing - maybe it was good.
  • You posted a claim that something you did not test works? Be prepared to eat your hat.
Reply
#7
I solved it myself.
Self-taught HTML, CSS, Python, and Java programmer
Reply
#8
(Jun-06-2018, 06:14 PM)Panda Wrote: I solved it myself.
No thank you, I guess?! Another name to ignore list
Test everything in a Python shell (iPython, Azure Notebook, etc.)
  • Someone gave you an advice you liked? Test it - maybe the advice was actually bad.
  • Someone gave you an advice you think is bad? Test it before arguing - maybe it was good.
  • You posted a claim that something you did not test works? Be prepared to eat your hat.
Reply
#9
(Jun-06-2018, 07:06 PM)volcano63 Wrote:
(Jun-06-2018, 06:14 PM)Panda Wrote: I solved it myself.
No thank you, I guess?! Another name to ignore list
Sorry. I didn't thank you because i'm ok at programming and have NO idea what it is you said i should do.
Self-taught HTML, CSS, Python, and Java programmer
Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  how solve: local variable referenced before assignment ? trix 5 369 Jun-15-2024, 07:15 PM
Last Post: trix
  Variable being erased inside of if statement deusablutum 8 522 Jun-15-2024, 07:00 PM
Last Post: ndc85430
  Cant contain variable in regex robertkwild 3 254 Jun-12-2024, 11:50 AM
Last Post: deanhystad
  is this a valid variable name? Skaperen 6 461 Jun-05-2024, 10:13 PM
Last Post: Skaperen
  Help with writing monitored data to mysql upon change of one particular variable donottrackmymetadata 3 495 Apr-18-2024, 09:55 PM
Last Post: deanhystad
  Commas issue in variable ddahlman 6 680 Apr-05-2024, 03:45 PM
Last Post: deanhystad
  Variable Explorer in spyder driesdep 1 396 Apr-02-2024, 06:50 AM
Last Post: paul18fr
  Mediapipe. Not picking up second variable stevolution2024 1 380 Mar-31-2024, 05:56 PM
Last Post: stevolution2024
Question Variable not defined even though it is CoderMerv 3 476 Mar-28-2024, 02:13 PM
Last Post: Larz60+
  optimum chess endgame with D=3 pieces doesn't give an exact moves_to_mate variable max22 1 376 Mar-21-2024, 09:31 PM
Last Post: max22

Forum Jump:

User Panel Messages

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