Python 我需要帮助字符串格式化

Python 我需要帮助字符串格式化,python,python-3.x,Python,Python 3.x,我有一段代码可以打印学校的发票,但是我需要使用字符串格式,而不是像以前那样做 if(quantity==1): item1=cart[0].split("^") item1price = (item_price[item_number.index(item1[1])]*int(item1[0])) item1rounded = item1price.round(item1price,2) print("Order Date:

我有一段代码可以打印学校的发票,但是我需要使用字符串格式,而不是像以前那样做

if(quantity==1):
    item1=cart[0].split("^")
    item1price = (item_price[item_number.index(item1[1])]*int(item1[0]))
    item1rounded = item1price.round(item1price,2)
    print("Order Date:     {}/{}/{}".format(month,day,year))
    print("  Customer:          {}        {}".format(cust_code,customer_name[customer_number.index(int(cust_code))]))
    print("")
    print("Ln#   Item #            Item Description             Req Date         Qty      Price         Total")
    
    print(" 1    {}             {}         {}/{}/{}        {}      {}   $   {:.2f}".format(item1[1],item_description[item_number.index(item1[1])],item1[2][:2],item1[2][2:4],item1[2][4:],item1[0],item_price[item_number.index(item1[1])],(item_price[item_number.index(item1[1])]*int(item1[0]))))
    print("")

    print("                                                                           Total           {:.2f}".format((item_price[item_number.index(item1[1])]*int(item1[0]))))
    
     
if(quantity==2):
    item1=cart[0].split("^")
    item2=cart[1].split("^")
    item1price = (item_price[item_number.index(item1[1])]*int(item1[0]))
    item1rounded = item1price.round(item1price,2)
    
    
    print("Order Date:     {}/{}/{}".format(month,day,year))
    print(  "  Customer:          {}           {}".format(cust_code,customer_name[customer_number.index(int(cust_code))]))
    print ("")
    print("Ln#   Item #            Item Description             Req Date         Qty      Price         Total")
    
    print(" 1    {}             {}                     {}/{}/{}        {}       {}   $    {}".format(item1[1],item_description[item_number.index(item1[1])],item1[2][:2],item1[2][2:4],item1[2][4:],item1[0],item_price[item_number.index(item1[1])],(item_price[item_number.index(item1[1])]*int(item1[0]))))
   
    print(" 2    {}              {}              {}/{}/{}      {}      {}   ${:.2f}".format(item2[1],item_description[item_number.index(item2[1])],item2[2][:2],item2[2][2:4],item2[2][4:],item2[0],item_price[item_number.index(item2[1])],(round(item_price[item_number.index(item2[1])]*float(item2[0]),2))))
    print("") 
    print("                                                                           Total        {:.2f}".format((item_price[item_number.index(item2[1])]*int(item2[0]))+(item_price[item_number.index(item1[1])]*int(item1[0]))))
有人能帮我把这个字符串格式化吗它必须是这样的


实际上,您需要迭代购物车列表并打印每一行。例如:

cart = [
  [20, 30],
  [40, 80]
]

# print the header before the loop
for (ln, item) in enumerate(cart,1):
    print(" {} {} {}".format(ln, item[0], item[1])) 
尝试上面的代码段,您将了解需要做什么,并查看enumerate文档


问候。

我不明白这个问题。您正在使用
str.format()
方法,这不是字符串格式吗?这回答了您的问题吗?对不起,是的,我不是最擅长解释,而不是使用空格,我们需要做一些类似[>:10}{>:10}的事情,我只是真的很困惑在每个括号中放什么答案会更有用,如果你添加到枚举文档的链接,我会在这里发布