你们第一次在这里问问题。我正在学习python的初级编程课程,我想知道为什么我的代码不起作用。它应该从一个文件中读取信息并将数字输出给用户,将所有数字相加,然后给出一个平均值。一切正常,直到我不得不对程序做一些修改。我的问题似乎在计算模块。我在代码的底部添加了正在读取的文件中的文本。我收到这个信息。你知道吗
fltTotal += float(strRead)
ValueError: could not convert string to float:
代码:
def main():
strMenu = ' '
while strMenu != 'X':
print('*************************************************')
print('* Popcorn Sales *')
print('*************************************************')
print('\n' *3)
print('D: Display Sales')
print('C: Calculate Totals')
print('X: Exit Application')
print()
strMenu = (str(input('Enter your Menu Selection: '))).upper()
if strMenu == 'D':
DisplaySales()
elif strMenu == 'C':
fltTotal, fltAverage = CalcTotal()
print(' ')
print('*************************************')
print('Popcorn Totals ')
print('*************************************')
print(' ')
print('Total popcorn sales: $' + str(format(fltTotal, '.2f')))
print('Average popcorn sales: $' + str(format(fltAverage, '.2f')))
print(' ')
input('Press enter to continue...')
def DisplaySales():
print(' ')
print('*************************************')
print('Popcorn Sales ')
print('*************************************')
print(' ')
try:
intListNumber = 0
SalesFile = open('saledata.txt', 'r')
strRead = '1'
intListNumber = 0
while strRead != '':
intListNumber += 1
strRead = SalesFile.readline()
if strRead != '':
print(str(intListNumber) + ': $' + strRead)
except IOError:
print('An error occurred')
print(' ')
input('Press enter to continue...')
def CalcTotal():
try:
intListNumber = 0
SalesFile = open('saledata.txt', 'r')
strRead = '1'
fltTotal = 0
while strRead != '':
strRead = SalesFile.readline()
intListNumber += 1
fltTotal += float(strRead)
fltAverage = fltTotal / intListNumber
except IOError:
print('An error occurred')
return fltTotal, fltAverage
main()
数据文件:
50
17.32
32.99
51.02
15.61
23.94
5.99
12.1
62.74
105.59
16.50
32.99
23.71
54.90
19
17.52
48.6
102
99.99
这里有一个小补丁为您的代码
你必须检查你读到的东西是否有效并且不是空的。 还有很多其他的方法,比如你正在用try做什么,期望验证条目并避免这样的问题。 由于这种方式实际上无法读取整个文件,而且只是文件格式的第一个元素,因此建议重写如下函数:
我用
print(line)
向您展示了它的工作原理。你知道吗相关问题 更多 >
编程相关推荐