Python. "Нужно более одного значения для распаковки"
def store_inFile(Name,Address,Area,Postcode):
#open the file
File2 = open("Fines.txt","rt")
#write the name address and post code to file and save to file
File2.write(str(Name)+"\n"+str(Address)+"\n "+str(Area)+"\n "+str(Postcode));File2.close()
#set File to open the datatbase
File =open("DATABASE.txt","rt")
NumP_Input = str(input("Number plate of person speeding. ").upper())
#loop each line intil the numberplate gets a match
for line in File:
Numberplate,Name,Address,Area,Postcode = line.split("|") #here use whatever you have splitting your database ie , . / ( |
if NumP_Input.upper() == Numberplate:
#output name address and number plate
print("Fine sent to \n \n"+str(Name)+"\n"+str(Address)+"\n "+str(Area)+"\n "+str(Postcode));store_inFile(Name,Address,Area,Postcode)
Я хочу прочитать из базы данных, и если пользователь вводит номерной знак, связанный с базой данных, вся информация (параметры) отправляется в другой файл.
1 ответ
Проверьте ваш ввод - файл "DATABASE.txt". Есть line
что не имеет "|" поэтому он не "разбит на пять частей", как того требует ваш код:
Numberplate,Name,Address,Area,Postcode = line.split("|")
Пример:
>>> line = "hello, world"
>>> Numberplate,Name,Address,Area,Postcode = line.split("|")
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: need more than 1 value to unpack