-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathca.py
More file actions
65 lines (54 loc) · 2.92 KB
/
ca.py
File metadata and controls
65 lines (54 loc) · 2.92 KB
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
destinations = ["Paris, France","Shanghai, China","Los Angeles, USA", "Sao Paulo, Brazil","Cairo, Egypt"]
test_traveler = ["Erin Wilkes", "Shanghai, China", ["historical site", "art"]]
attractions = [[] for destination in destinations]
def get_destination_index(destination):
destination_index = destinations.index(destination)
return destination_index
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)
def add_attraction(destination,attraction):
try:
destination_index = get_destination_index(destination)
attractions_for_destination = attractions[destination_index]
attractions_for_destination.append(attraction)
except ValueError:
return
return attractions_for_destination
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"]])
add_attraction("Los Angeles, USA",["Venice Beach",["beach"]])
def find_attractions(destination,interests):
destination_index = get_destination_index(destination)
attractions_in_city = attractions[destination_index]
attractions_with_interest = []
for index in attractions_in_city:
possible_attraction = index
attraction_tags = index[1]
for interest in interests:
if interest in attraction_tags:
attractions_with_interest.append(possible_attraction[0])
return attractions_with_interest
def get_attractions_for_traveler(traveler):
traveler_destination = traveler[1]
traveler_interests = traveler[2]
traveler_attractions = find_attractions(traveler_destination,traveler_interests)
interests_string = "Hi " + traveler[0] + ", we think you'll like these places around " + 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)