简体   繁体   中英

AttributeError: 'tuple' object has no attribute 'write'

I have a homework assignment for a Python class and am running into an error that I don't understand. Running Python IDLE v3.2.2 on Windows 7.

Below is where the problem is happening:

#local variables
number=0
item=''
cost=''

#prompt user how many entries
number=int(input('\nHow many items to add?: '))

#open file
openfile=('test.txt','w')

#starts for loop to write new lines
for count in range(1,number+1):
    print('\nFor item #',count,'.',sep='')
    item=input('Name:  ')
    cost=float(input('Cost: $'))

    #write to file
    openfile.write(item+'\n')
    openfile.write(cost+'\n')

#Display message and closes file
print('Records written to test.txt.',sep='')
openfile.close

This is the error that I am getting:

Traceback (most recent call last): File "I:\\Cent 110\\test.py", line 19, in openfile.write(item+'\\n')
AttributeError: 'tuple' object has no attribute 'write'

You're missing the open .

openfile = open('test.txt','w')

And at the end there are missing parens when you try to close the file

openfile.close()

Edit : I just saw another problem.

openfile.write(str(cost)+'\n')

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM