I am new to python and I am making a game in python I have two functions they are into different modules and when I call find_invotory() (show user's inventory), which uses a list to iterate over all the items in a list, it randomly prints none at the end of the list, I have no idea why,
Function 1:
def find_invontory():
first_line = True
invontory_lines = ["ITEM OWNED"]
store_items = ["ATTACK UNITS", "Infantry", "Tank", "Aircraft", "Atomic Missle", "Hydrogen Missle", "DEFENCE UNITS", "Defence Garrison", "Land Mines", "Anti Aircraft", "Laser Cannon", "DEFENCE BUILINGS", "Walls", "Fort", "Turret", "Bomb Shelter", "-----------------"]
for item in store_items:
if(item == store_items[0] or item == store_items[6] or item == store_items[11] or item == store_items[-1]): ### if statment so i dont all the collection funciton on my headers
invontory_lines.append(item)
else:### calling the collection funciton with the object in list
sps = ""
CCmd = "get_" + item
IG = collection(CCmd)
number = len(item)
while number < 19:
sps += " "
number += 1
invontory_lines.append(item + ":" + sps + str(IG))
for line in invontory_lines:## print all the items in list
print(Fore.BLUE, line)
if first_line: ### print enter after first line
ent()
first_line = False
I am returning global variables, function 2:
def collection(var_needed):
if var_needed == "get_items_bought":
return total_items_bought
elif var_needed == "get_money_spent":
return money_spent
elif var_needed == "get_Infantry":
return infantry
elif var_needed == "get_Tank":
return tanks
elif var_needed == "get_Aircraft":
return air_craft
elif var_needed == "get_Atomic Missle":
return AM
elif var_needed == "get_Hydrogen Missle":
return HM
elif var_needed == "get_Defence Garrison":
return defence_troops
elif var_needed == "get_Land Mines":
return land_mines
elif var_needed == "get_Anti Aircraft":
return anti_aircraft
elif var_needed == "get_Laser Cannon":
return Lcannons
elif var_needed == "get_Walls":
if walls:
return 1
else:
return 0
variables returning:
#### attack variables ###
infantry = 0
tanks = 0
air_craft = 0
AM = 0
HM = 0
### Defence buildings ##
walls = False
fort = False
turret = False
bomb_shelter = False
### defence units ##
defence_troops = 0
land_mines = 0
anti_aircraft = 0
Lcannons = 0
Output:
ITEM OWNED
ATTACK UNITS
Infantry: 0
Tank: 0
Aircraft: 0
Atomic Missle: 0
Hydrogen Missle: 0
DEFENCE UNITS
Defence Garrison: 0
Land Mines: 0
Anti Aircraft: 0
Laser Cannon: 0
DEFENCE BUILDINGS
Walls: 0
Fort: 0
Turret: 0
Bomb Shelter: 0
-----------------
None