【问题标题】:i need help string formatting我需要帮助字符串格式化
【发布时间】:2020-11-06 01:14:42
【问题描述】:

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

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]))))

有人可以帮我格式化字符串吗?它需要是这样的

【问题讨论】:

  • 我不明白这个问题。你用的是str.format()方法,那不是字符串格式吗?
  • 对不起,我不是最擅长解释而不是使用空格,我们需要做类似 [>:10}{>:10} 之类的事情,我真的很困惑在每个大括号中放什么

标签: python python-3.x


【解决方案1】:

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

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])) 

试试上面的 sn-p,你会弄清楚你需要做什么并检查枚举文档。

问候。

【讨论】:

  • 如果您将链接添加到枚举文档中,答案会更有帮助
  • 马上把它们贴在这里
猜你喜欢
  • 2018-04-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多