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

Problem solving using a computer, PROBLEM SOLVING USING A COMPUTER The ...

PROBLEM SOLVING USING A COMPUTER The following steps are required for solving a problem using a computer system:     Problem Definition     Program Planning (Preparati

Sequential-access memory device, Sequential-access memory device: A  S...

Sequential-access memory device: A  Sequential-access  memory device reads data in sequence. In other words, information on a serial device can only be retrieved in the same s

Define jumps and loops , The unconditional jumps in a written program in a...

The unconditional jumps in a written program in assembler language are specified by the jmp instruction; a jump is to moves the flow of the execution of a program by sending the co

Digital design system, Manipulate the following Boolean expression in such ...

Manipulate the following Boolean expression in such a way so that it can be implemented using exclusive-OR and AND gates only. AB''CD'' + A ''BCD'' + AB''C''D + A''BC''D

Utility , what are the definition?

what are the definition?

Computer orgnaization, draw a block diagram to show organization of a compu...

draw a block diagram to show organization of a computer system .explain or a units of computer system

Online searching, Online Searching: The real difference between manual...

Online Searching: The real difference between manual searching and online searching lies, according to William A. Katz, in the mechanics and the jargon of the latter. However,

Flowchart, Fahrenheit to celsius convertion

Fahrenheit to celsius convertion

Finite automata, find the regular expression of(a/?)(a/b)?

find the regular expression of(a/?)(a/b)?

Open systems interconnection, Open Systems Interconnection (OS1): As t...

Open Systems Interconnection (OS1): As there are many different protocols for LANs and WANs, communication between two different systems can be difficult. The International St

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