Python Forum
Print variable values from a list of variables
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Print variable values from a list of variables
#1
Sorry, I'm new to python and coding in general. I been searching for some time and haven't found a way to do this.

This is the code so far:
vin1 = 100
vin2 = 200
vin3 = 300
vin4 = 400

vin_numbers = ['vin1', 'vin2', 'vin3', 'vin4']
print('\nAvailable VIN numbers:')
for vin in vin_numbers:
	print(f'{vin} = ')
I'm looking for a way to output the numeric values of the variables in the list rather than the text values from the list. I would really appreciate any help
Reply
#2
'vin1' is a string. It is not the variable you initialized to 100. To put the variable values in the list you do this:
vin_numbers=[vin1, vin2, vin3, vin4]
You don't need need to make the variables and can put the values directly in the list.
vin_numbers=[100, 200, 300, 400]
Reply
#3
I see. I think I was trying to do too much with it, when just making the list a list of numbers would be cleaner. thank you!
Reply
#4
I don't understand why, but it is a common misconception by many new programmers on this forum that everything needs a variable, as in if you have 4 things you must need 4 variables. I don't know where this thinking comes from, but it is common enough that there must be some popular resource perpetuating this fallacy.

Variables are bad. Necessary, but bad. Every variable is extra code and extra potential for making mistakes. Your programs should only use as many variables as are necessary and no more. In your example you should only have 1 variable, the list of VIN numbers. Unless there is something really special about the second VIN number why should it have a variable? That can be a kind of test for deciding to use a variable. If something is "special" it probably deserves a variable, else treat it as part of a collection or ignore it.

What do I mean by "treat it as part of a collection"? In this example you have a list of VIN numbers. In the "real world" each VIN number represents something unique and special, but a program is not the real world and a VIN number is just a unique ID. Nothing special about that. Your program needs to remember VIN numbers, so there has to be some way to save them and access them and probably process them, but this will be the same for all the VIN numbers. When you have a bunch of related things like this it is best to treat them as faceless entities in a collection.

What do I mean by "ignore it"? I see a lot of Python code on this forum that makes variables for things that should be thrown away. This is particularly true in the GUI discussion group. Almost everything returned by a tkinter call should be thrown away. After I place my controls I don't need to remember the frame that holds them. Depending how I write my code I don't have to remember the handles for my controls and displays. This stuff is important when you are making things, but once you move into running things they are no longer referenced. If you are done using something, throw it away. Python is good at recycling
Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  Copying the order of another list with identical values gohanhango 7 1,060 Nov-29-2023, 09:17 PM
Last Post: Pedroski55
  Search Excel File with a list of values huzzug 4 1,147 Nov-03-2023, 05:35 PM
Last Post: huzzug
  Comparing List values to get indexes Edward_ 7 1,081 Jun-09-2023, 04:57 PM
Last Post: deanhystad
  How do you get Python to print just one value in a list? 357mag 3 967 May-17-2023, 09:52 PM
Last Post: rob101
  Advancing Through Variables In A List knight2000 0 499 May-13-2023, 03:30 AM
Last Post: knight2000
  Print names in x-axis of a time-series values hobbyist 4 1,176 Apr-22-2023, 09:29 PM
Last Post: deanhystad
  Print variable without '' and spaces arnonim 1 694 Jan-30-2023, 05:23 PM
Last Post: deanhystad
  Adding values with reduce() function from the list of tuples kinimod 10 2,512 Jan-24-2023, 08:22 AM
Last Post: perfringo
  How to print variables in function? samuelbachorik 3 851 Dec-31-2022, 11:12 PM
Last Post: stevendaprano
  user input values into list of lists tauros73 3 1,023 Dec-29-2022, 05:54 PM
Last Post: deanhystad

Forum Jump:

User Panel Messages

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