Python Help, Basic Computer Science

Assignment Help:
I need help! import cgi, cgitb
cgitb.enable()

HTML_head = ''Content-type: text/html\n\n''
HTML_top = ''''''
Restaurant Results
''

Restaurant Results

''''''
HTML_bottom = ''''

HTML_table=''''''






''''''
Restaurant_filename = ''restaurant.txt''

MasterList = [] # master list of dictionaries

# -------------------------- Main -----------------------------
def Main():
global MasterList
lines = ReadData()
if lines == '''':
return CreateMasterList(lines)
form = cgi.FieldStorage()
group = ''''
if ''group'' in form:
group = form[''group''].value
if group == ‘checko’:
restaurant=''''
if ''restaurant'' in form:
restaurant= form[''restaurant''].value
Printchecko(restaurant)
elif group == ''subgroup'':
state=form[''group_borough''].value
cuisine=form[''Cuisine''].value
city=form[''cityyy’].value
number=form[''number''].value
print(state,cuisine,city,number)
elif group == ''total'':
state = form[''all_borough''].value
print state
else:
PrintError(''ERROR: Sorry. Restaurant is not an option.'')

# ------------------------- PrintError --------------------------
def PrintError(msg):
print HTML_head+HTML_top+''

''+msg+HTML_bottom

# ---------------------- ReadData --------------------------------
def readdata():
f=open(''restaurants.txt'',''r'')
s=f.read()
f.close()
y=s.replace(''Reserve Now'','''')
k=y.strip()
l=k.split(''\n'')
new=[]
x=0
while x if len(lines) < 2:
PrintError(''ERROR: Bad dataset in ''+ Restaurant_filename)
return ''''
elif:
new+=[l[x].split(''\t'')]
x+=1
return new
lines = lines[1:] # ignore column headers
return lines

# ------------------------- CreateMasterList -------------------
def CreateMasterList(lines):
global MasterList
for line in lines:
d = {}
fields = line.split('','')
if len(fields) >= 6:
if ''"'' in line:
words = line.split(''"'')
d[''name''] = words[1].strip()
else:
d[''name''] = fields[1].strip()
if fields[0] == ''s'':
d[''state'']=False
else:
d[''state'']=True
d[''city'']=(fields[-3])
d[''cuisine'']=(fields[-1])])
MasterList.append(d)

# ------------------------- PrintIndividual ---------------------
def Printchecko(restaurant):
lookfor = restaurant.strip().lower()
sortlist=[]
for d in MasterList:
if lookfor in d[''name''].lower():
d=Highlightrestaurant(d,lookfor)
sortlist.append([d[''name''].lower(),d])
sortlist.sort()
header=''Restaurant with names containing "''+ restaurant+''"''
PrintTable(header,sortlist)

# --------------------------- HighlightRestaurant-------------------
def HighlightRestaurant (d,lookfor):
front=''''
back=''
''
mixed=d[''name'']
low=mixed.lower()
ln=len(lookfor)
new_mixed=''''
while lookfor in low:
pos=low.find(lookfor)
new_mixed=mixed[:pos]+front+mixed[pos:pos+ln]+back
mixed=mixed[pos+ln:]
low=low[pos+ln:]
new_mixed+=mixed
d[''name-HTML'']=new_mixed
return d

# ------------------------ PrintTable ----------------------------
def PrintTable(header,sortedlist):
s=HTML_head+HTML_top
s+=''

''+header+''

''
s+=HTML_table
if len(sortedlist)==0:
s+=''''
for i in range(5):
s+=''''
else:
n=1
for i in range(5):
s+=''''
s+=''\n''
n+=1
s+=''
Restaurant nameStateCityCuisine
  No matches s
''
s+=HTML_bottom
print s
Main()

Related Discussions:- Python Help

Cpu scheduler, Selects among the processes in memory which are ready to exe...

Selects among the processes in memory which are ready to execute & allocates the CPU to one of them CPU scheduling decisions can be taken place when a process: A. Terminates B. Swi

Internet searching, Internet searching:  The Internet consists of mill...

Internet searching:  The Internet consists of millions of private/public/academic/business and government networks having local to global scope. It has billions of web pages o

Web browser, Web Browser:   A Web browser is software application that ...

Web Browser:   A Web browser is software application that enables you to find, retrieve, and display information available on the World Wide Web (WWW). Browser also allows you

Amendments in erp, What is new? ERP, on the other hand begins with a fr...

What is new? ERP, on the other hand begins with a fresh relook at the existing business. In fact it is the result of a happy marriage between Business Process Reengineering (BP

Digitalelectronics, what duality principle and huntington postulates

what duality principle and huntington postulates

Register array, #queA register is a memory location surrounded by the CPU i...

#queA register is a memory location surrounded by the CPU itself, designed to be rapidly accessed for purposes of fast data retrieval. Processors normally hold a register array, wh

Bandwidth, Bandwidth: Bandwidth is the second concept important for tr...

Bandwidth: Bandwidth is the second concept important for transmission. This concept can be explained with the help of the traffic network mentioned earlier. If there is a two-

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd