Ich versuche, ein Menü aus Informationen in einer Datei zu drucken, also nahm ich die Informationen und erstellte ein Wörterbuch. Ich versuche herauszufinden, ob es eine Möglichkeit gibt, den Abstand zwischen den Werten zu formatieren, damit ich die Werte mit den Headern abgleichen kann. Ich versuche auch herauszufinden, ob es überhaupt so ist, dass jeder Schlüssel und seine Werte ohne eine Leerzeile in der Mitte gedruckt werden. Mein Code sieht derzeit wie folgt aus:formart Abstand zwischen Drucken Wörterbuch
#import classes
import inventory
#define constant for file
INVENTORY = "inventory.txt"
#define main
def main():
#create empty dictionary to fill later
inventory_dict = {}
#call function to process inventory
process_inventory(inventory_dict)
#call function to print menu
menu(inventory_dict)
#define process file inventory function
def process_inventory(inventory_dict):
#open inventory file
inventory_file = open(INVENTORY, 'r')
#create inventory instances
for item in inventory_file:
#split line to reash
inventory_list = item.split(",")
#create variables to store each quality
item_id = inventory_list[0]
item_name = inventory_list[1]
item_qty = inventory_list[2]
item_price = inventory_list[3]
#create object
product = inventory.Inventory(item_id,item_name,item_qty,item_price)
#add qualities to inventory dictionary
inventory_dict[item_id] = product
#close file
inventory_file.close()
#define function to print menu
def menu(inventory_dict):
#print headers
print("ID Item Price Qty Avaliable")
#print object information
for object_id in inventory_dict:
print(inventory_dict[object_id])
#print how to exit
print("Enter 0 when finished")
#print blank line
print(" ")
Beim Drucken mit dem Wörterbuch die Ausgabe wie folgt aussieht:
Warum es die ersten beiden Schlüssel mit Werten Zeile für Zeile ohne Leerzeichen gedruckt wurde, aber andere mit einer Linie dazwischen? Ich möchte jeden Wert mit seinem Header ausrichten. Ist das möglich? Wenn das so ist, wie? Die einzige Möglichkeit, dies zu tun, wäre mit der Druckfunktion und selbst zu formatieren.
Zufallsraten: Ihre 'item_price'-Variable hat ein '' \ n''-Zeichen. – CoryKramer
@Maddi, möchten Sie es als eine ausgerichtete Tabelle drucken? Wenn ja, könnten Sie auch '\ t' verwenden, um eine viel bessere Visualisierung zu erhalten. – lmiguelvargasf
Versuchen Sie 'inventory_list = item.strip(). Split (", ")' –