首页 > 解决方案 > 我怎样才能摆脱 `''` 和 `()` 字符?

问题描述

我正在执行这段代码:

def filewrite():
    filew = open('company.dat', 'a')
    custid = str(input('Enter Customer ID:'))
    Widg = abs(float(input('Quantity of Widgets Ordered:')))
    Gidg = abs(float(input('Quantity of Gidgets Ordered:')))
    Dood = abs(float(input('Quantity of Doodads Ordered:')))
    widt = Widg * 10.55
    gidt = Gidg * 7.30
    doodt = Dood * 5.25
    total = widt + gidt + doodt
    wida = (Widg, 'Widgets Ordered @ $10.55', format(widt,',.2f'))
    gida = (Gidg, 'Gidgets Ordered @ $7.30', format(gidt,',.2f'))
    dooda = (Dood, 'Doodads Ordered @ $5.25', format(doodt,',.2f'))
    filew.write('\n')
    filew.write(custid + '\n')
    filew.write(str(wida))
    filew.write(str(gida))
    filew.write(str(dooda))
    filew.close()


def fileread():
    filer = open('company.dat', 'r')
    read = filer.read()
    filer.close()
    print(read, end='')

again = True

while again == True:
    print('1 - Add a new Invoice Order')
    print('2 - Display all Invoice Orders')
    print('3 - Quit')

    choice = abs(int(input('Enter 1, 2, or 3:')))

    if choice > 3:
        print('Error, no choice of such available.')
        choice = abs(int(input('Enter 1, 2, or 3:')))


    if choice == 1:
        filewrite()
        print('\n')

    if choice == 2:
        fileread()
        print('\n')

    if choice == 3:
        exit()

当我输入所有内容并读取文件时,它会显示为:

As234
(12.0, 'Widgets Ordered @ $10.55', '126.60')(1.0, 'Gidgets Ordered @ $7.30', 
'7.30')(3.0, 'Doodads Ordered @ $5.25', '15.75')

我怎样才能摆脱()''那个显示?

我是编码新手并开始学习 python 课程,这是我的任务之一,我坚持这一点。

标签: pythonpython-3.x

解决方案


您的问题是如何创建变量。在这里,您将一些变量创建为整数:

Widg = abs(float(input('Quantity of Widgets Ordered:')))
Gidg = abs(float(input('Quantity of Gidgets Ordered:')))
Dood = abs(float(input('Quantity of Doodads Ordered:')))

但是在这里你使用每个变量制作一个列表:

wida = (Widg, 'Widgets Ordered @ $10.55', format(widt,',.2f'))
gida = (Gidg, 'Gidgets Ordered @ $7.30', format(gidt,',.2f'))
dooda = (Dood, 'Doodads Ordered @ $5.25', format(doodt,',.2f'))

然后,当您将其转换为字符串时,str(wida)您会得到准确的打印内容,因为那是您为演员提供的。

您应该检查要创建的变量类型,并执行以下操作之一:

  1. 通过格式化列表中的项目来投射以打印
  2. 创建一个类以将您当前拥有的项目保存在列表中(wida、gida、dooda),您可以在其中分别获取类中的每个变量。

如果您对第二个选项有任何问题,请发表评论或阅读文档


推荐阅读