这是我的数据库名为myDB.txt
:如何查找和替换文本文件中的一行?
28273139
iPhone
5.50
30
5
35
81413852
Book
1.50
43
10
55
的文本文件数据库的格式为
Product Code
Product Name
Price
Current Stock
Reorder Stock (the lowest the stock can go)
Target Stock
现在,我想更新iPhone的数据。 这是iPhone的数据。
28273139
iPhone
5.50
30
5
35
它使用8位产品代码来标识产品。
我写了下面的代码。
userCode = "28273139"
newstock = "29"
database = open('myDB.txt','r+')
while(str(userCode) not in next(database)):
pass
else:
for i in range(3):
line = next(database)
replace = line.replace(line,newstock)
database.write(replace)
我想改变列表的第4个值,数字30到数字29,我声明为变量newstock。 程序向下移动3行,因为数据库中每个产品的格式都相同,并用此新值替换行。
我不能更新iPhone数据所需要的结果 -
28273139
iPhone
5.50
29
5
35
然而,这种方法是行不通的。
我每次都收到一个错误。
AttributeError: 'str' object has no attribute 'readlines'
有人可以帮助解决我的问题吗?我写的代码是否正确以产生所需的结果?
你说你得到一些错误。你可以在这里发布吗? – MaLiN2223
@ MaLiN2223发布了! 'AttributeError的:“海峡”对象有没有属性“readlines'' –
您要3线前进路线,但心不是行的迭代器,它是一个字符串,所以readlines方法行不通这里 – Nullman