1
我试图从文件内的信息打印菜单,所以我拿走了信息并创建了一本字典。我试图找出是否有方法来格式化值之间的间距,所以我可以将值与标头对齐。我还试图找出是否有任何关键字及其值将在中间没有空格的情况下打印。 我的代码目前看起来是这样的:打印字典之间的formart间距
#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(" ")
当打印输出看起来像词典:
为什么会打印与价值线前两个键行后没有空间,但其他与之间的线?我想将每个值与它的标题对齐。那可能吗?如果是这样如何?我能想到的唯一方法就是使用打印功能并自己设置格式。
随机猜测:你的'item_price'变量有一个''\ n''尾随它。 – CoryKramer
@Maddi,你想打印它作为一个对齐的表?如果是这样,你也可以考虑使用'\ t'有一个更好的可视化。 – lmiguelvargasf
尝试'inventory_list = item.strip()。split(“,”)' –