-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathborderless_tourist.py
86 lines (70 loc) · 3.11 KB
/
borderless_tourist.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
destinations = ['Paris, France',
'Shanghai, China',
'Los Angeles, USA',
'São Paulo, Brazil',
'Cairo, Egypt']
test_traveler = ['Erin Wilkes', 'Shanghai, China', ['historical site', 'art']]
def get_destination_index(destination):
destination_index = destinations.index(destination)
return destination_index
#print(get_destination_index("Hyderabad, India"))
def get_traveler_location(traveler):
traveler_destination = traveler[1]
traveler_destination_index = get_destination_index(traveler_destination)
return traveler_destination_index
test_destination_index = get_traveler_location(test_traveler)
#print(test_destination_index)
attractions = []
for desitantion in destinations:
attractions.append([])
#print(attractions)
def add_attraction(destination, attraction):
try:
destination_index = get_destination_index(destination)
attractions_for_destination = attractions[destination_index]
attractions_for_destination.append(attraction)
return
except ValueError:
return
add_attraction('Los Angeles, USA', ['Venice Beach', ['beach']] )
#print(attractions)
add_attraction("Paris, France", ["the Louvre", ["art", "museum"]])
add_attraction("Paris, France", ["Arc de Triomphe", ["historical site", "monument"]])
add_attraction("Shanghai, China", ["Yu Garden", ["garden", "historcical site"]])
add_attraction("Shanghai, China", ["Yuz Museum", ["art", "museum"]])
add_attraction("Shanghai, China", ["Oriental Pearl Tower", ["skyscraper", "viewing deck"]])
add_attraction("Los Angeles, USA", ["LACMA", ["art", "museum"]])
add_attraction("São Paulo, Brazil", ["São Paulo Zoo", ["zoo"]])
add_attraction("São Paulo, Brazil", ["Pátio do Colégio", ["historical site"]])
add_attraction("Cairo, Egypt", ["Pyramids of Giza", ["monument", "historical site"]])
add_attraction("Cairo, Egypt", ["Egyptian Museum", ["museum"]])
#print(attractions)
def find_attractions(destination, interests):
destination_index = get_destination_index(destination)
attractions_in_city = attractions[destination_index]
attractions_with_interest = []
for i in attractions_in_city:
possible_attraction = i
#print(i)
attraction_tags = i[1]
# print(attraction_tags)
for i in interests:
if i in attraction_tags:
attractions_with_interest.append(possible_attraction[0])
return attractions_with_interest
la_arts = find_attractions("Los Angeles, USA", ['art'] )
#print(la_arts)
def get_attractions_for_traveler(traveler):
traveler_name = traveler[0]
traveler_destination = traveler[1]
traveler_interests = traveler[2]
traveler_attractions = find_attractions(traveler_destination, traveler_interests)
interests_string = "Hi {name}, we think you'll like these places around {place}: ".format(name=traveler_name,place=traveler_destination)
for i in range(len(traveler_attractions)):
if traveler_attractions[-1] == traveler_attractions[i]:
interests_string += 'the ' + traveler_attractions[i] + "."
else:
interests_string += 'the ' + traveler_attractions[i] + ", "
return interests_string
smills_france = get_attractions_for_traveler(['Dereck Smill', 'Paris, France', ['monument']])
print(smills_france)