def test_ensureSortedAscending(): a0 = Apartment(1204.56, 200, 3) a1 = Apartment(1204.56, 400, 7) a2 = Apartment(1000, 100, 9) apartmentList = [a0, a1, a2] mergesort(apartmentList) assert ensureSortedAscending(apartmentList) == True
def test_getNthApartment(): a0 = Apartment(1204.56, 200, 3) a1 = Apartment(1204.56, 400, 7) a2 = Apartment(1000, 100, 9) apartmentList = [a0, a1, a2] mergesort(apartmentList) assert getNthApartment(apartmentList, 2) == a1
def test_mergesort(): a0 = Apartment(1204.56, 200, 3) a1 = Apartment(1204.56, 400, 7) a2 = Apartment(1000, 100, 9) apartmentList = [a0, a1, a2] mergesort(apartmentList) assert apartmentList == [a2, a0, a1]
def test_getTopThreeApartments(): a0 = Apartment(1204.56, 200, 3) a1 = Apartment(1204.56, 400, 7) a2 = Apartment(1000, 100, 9) a3 = Apartment(1000, 214, 10) a4 = Apartment(300, 112, 3) apartmentList = [a0, a1, a2, a3, a4] mergesort(apartmentList) assert apartmentList == [a4, a2, a3, a0, a1] assert getTopThreeApartments( apartmentList ) == "1st:(Apartment) Rent: $300.00, Distance From UCSB: 112m, Condition: 3/10, 2nd:(Apartment) Rent: $1000.00, Distance From UCSB: 100m, Condition: 9/10, 3rd:(Apartment) Rent: $1000.00, Distance From UCSB: 214m, Condition: 10/10,"
def parse_listing(response): title = css_selector_value(response, '#expose-title::text') cold_rent = css_selector_value(response, '.is24qa-kaltmiete::text') total_rent = css_selector_value(response, '.is24qa-gesamtmiete::text') utility_cost = css_selector_value(response, '.is24qa-nebenkosten::text', 1) heating_cost = css_selector_value(response, '.is24qa-heizkosten::text', 1) heating_included = "zzgl. Heizkosten" not in total_rent deposit = css_selector_value( response, '.is24qa-kaution-o-genossenschaftsanteile::text') area = css_selector_value(response, '.is24qa-flaeche::text') rooms = css_selector_value(response, '.is24qa-zi::text') street = css_selector_value(response, '.address-block span::text') zip_code = css_selector_value( response, '.address-block span.zip-region-and-country::text') address = street + ' ' + zip_code if street != zip_code else zip_code description = css_selector_value(response, '.is24qa-objektbeschreibung::text') images = response.css('img.sp-image::attr(data-src)').getall() yield Apartment(title=title, cold_rent=get_number(cold_rent), total_rent=get_number(total_rent), utility_cost=get_number(utility_cost), heating_cost=get_number(heating_cost), heating_included=heating_included, deposit=get_number(deposit), area=get_number(area), rooms=get_number(rooms), address=address, description=description, link=response.url, images=images)
def main(): list = [] while (True): print("1 - add new") print("2 - delete") print("3 - search") print("4 - show all") x = input() if int(x) == 1: print("City name:") city_name = input() print("population:") population = input() print("Street name") street_name = input() print("Building number:") building_number = input() print("Apartment number:") apartment_number = input() if street_name == "" and building_number == "" and apartment_number == "": item = City(city_name, population) elif building_number == "" and apartment_number == "": item = Street(city_name, population, street_name) elif apartment_number == "": item = Building(city_name, population, street_name, building_number) else: item = Apartment(city_name, population, street_name, building_number, apartment_number) list.append(item) elif int(x) == 2: print("1 - City name") print("2 - Population") print("3 - Street name") print("4 - Building number") print("5 - Apartment") field = input() print("What?") what = input() print("DELETED") for m in delete(list, field, what): print(m) elif int(x) == 3: print("1 - City name") print("2 - Population") print("3 - Street name") print("4 - Building number") print("5 - Apartment") field = input() print("What?") what = input() for m in search(list, field, what): print(m) else: for m in list: print(m)
def fetch(self): logging.debug('FETCH FROM APARTMENTS') cursor = self.conn.cursor() cursor.execute('SELECT * FROM apartments ORDER BY datetime(issueDate) DESC') rows = cursor.fetchall() apartments = [] for row in rows: apartments.append(Apartment(row[0], row[1], row[2], row[3])) return apartments
def parseApartments(self): apartments = [] for i in range(0, int(self.data["len"])): apt = "Apt_%d" % i aptname = self.data[apt]["Apt_name"] roommates = self.parseRoommates(apt) weekleychores = self.data[apt]["chores"][0]["weekly_chores"] recchores = self.data[apt]["chores"][0]["recurring_chores"] choretime = self.data[apt]["assign-chore-time"] remnindertime = self.data[apt]["chore-reminder-time"] apartments.append( Apartment(aptname, roommates, weekleychores, recchores, choretime, remnindertime)) return apartments
def get_apartments_from_page(page): apartments = [] response = opener.open( 'http://brest.irr.by/realestate/longtime/search/rooms=2%2C3/price=%D0%BE%D1%82+100+%D0%B4%D0%BE+400/currency=BYN/list=list/page{}/'.format( page)) html = response.read().decode('utf-8') page = pq(html) list_of_apartments = page.find('.add_list') for i in range(list_of_apartments.length): apartments.append(Apartment(list_of_apartments.eq(i).find(".add_title").attr('href'), list_of_apartments.eq(i).find('.add_cost').text(), list_of_apartments.eq(i).find(".add_title").text(), convert_to_iso_date(list_of_apartments.eq(i).find(".add_data").text()))) return apartments
def getApartment(self): apartment = Apartment() doors = self.__builder.getDoors() heating = self.__builder.getHeating() heatingPower = heating.heatingPower heatingType = heating.heatingType # Build the palace apartment.setDoors(doors) apartment.setHeating(heatingType, heatingPower) return apartment
def test_lessThanOperator(): a0 = Apartment(1806, 255, "excellent") a1 = Apartment(1502, 280, "average") a2 = Apartment(1502, 350, "bad") a3 = Apartment(700, 200, "excellent") a4 = Apartment(700, 200, "bad") a5 = Apartment() assert a1 < a0 == True assert a1 < a2 == True assert a3 < a4 == True assert a2 < a4 == False assert a5 < a4 == True
def parse_apartments(raw_listings): apartments = [] for line in raw_listings: items = line.splitlines() items.pop(0) items.pop(0) if items[0] == u'LägenhetLägenhet': items.pop(0) address = items[0] city = items[1] price = int(items[2].replace(u'\xa0', '').replace('kr', '')) size = items[3] rooms = items[4] rent = int(items[5].replace(u'kr/mån', '').replace(u'\xa0', '')) info = items[7] apartment = Apartment(address, price, size, rent, city, rooms, info) apartments.append(apartment) return apartments
def create_apartment(apartment_type, size, no_rooms, bau_year, address, apartment_owner): return Apartment(apartment_type, size, no_rooms, None, None, bau_year, address, apartment_owner, None)
def test___init__1(): a0 = Apartment(1204.56, 200, 3) assert a0.rent == 1204.56 assert a0.metersFromUCSB == 200 assert a0.condition == 3
'//div[@id="ctl06_guiGridBoxStrech1_Panel1"]/ul/li[%d]/div/div/p/a' % ad_index) price = price_to_int(ad_price_tag[0].text) if price <= price_limit: relevant_ads_urls.append( Eshkol_site['url'] + '/' + toHebrew(ad_url_endpoint[0].attrib['href'])) page_index = page_index + 1 Apartments = [] # looping over all the relevant ads for ad_url in relevant_ads_urls: print "Checking ad in url: %s" % ad_url response = requests.get(ad_url, headers=hdr) tree = html.fromstring(response.content) apartment = Apartment(ad_url) #apartment.address = toHebrew(tree.xpath('//span[@id="ctl06_guiTofscarucel1_lblStreetData"]')[0].text) str = extractSpanText(tree, "ctl06_guiTofscarucel1_lblStreetData") apartment.address = toHebrew(str) apartment.neighborhood = toHebrew( tree.xpath('//span[@id="ctl06_guiTofscarucel1_lblShcunaData"]') [0].text) apartment.price = price_to_int( tree.xpath('//span[@id="ctl06_guiTofscarucel1_lblPriceData"]')[0].text) apartment.size = tree.xpath( '//span[@id="ctl06_guiTofscarucel1_lblSqmrData"]')[0].text apartment.floor = tree.xpath( '//span[@id="ctl06_guiTofscarucel1_lblFloorData"]')[0].text apartment.total_floors = tree.xpath( '//span[@id="ctl06_guiTofscarucel1_lblFlooradData"]')[0].text apartment.rooms = tree.xpath(
# Apartment # ############# # 다른 파일에서 class import from Apartment import Apartment from Vile import Vile # 파일읽기 f = open("./Apartment.txt", 'r') N = int(f.readline()) # Apartment정보 객체로 만들어 입력받기 apartments = [] for i in range(N): row = f.readline().split(' ') a = Apartment(row[0], int(row[1]), int(row[2].strip())) # 객체 생성 apartments.append(a) f.close() # Q 가장 평수가 큰 아파트를 찾아 "xxx동 xxxx호의 x개의 방이 있는 xx평의 집입니다" 라고 출력 print('Q. 가장 큰 평수 아파트의 정보를 출력하세요.') print("A.", max(apartments)) # magic method가 작동하는 것을 직관적으로 파악해보기 위해 for문을 이용하여 최댓값을 찾아보세요! max_index1 = 0 max_index2 = 0 for j in range(N - 1): if apartments[max_index1].size < apartments[j + 1].size: max_index1 = j + 1
def test___eq__(): a0 = Apartment(1204.56, 200, 3) a1 = Apartment(1204.56, 200, 3) assert (a1.getApartmentDetails() == a0.getApartmentDetails()) == True
# testfile.py from Apartment import Apartment from lab06 import mergesort from lab06 import ensureSortedAscending from lab06 import getNthApartment from lab06 import getTopThreeApartments a0 = Apartment(1204.56, 200, 3) a1 = Apartment(1204.56, 200, 7) a2 = Apartment(1000, 100, 9) a3 = Apartment(1000, 214, 10) a4 = Apartment(300, 112, 3) a5 = Apartment(300.52, 250, 2) #test Apartment.py def test___init__1(): a0 = Apartment(1204.56, 200, 3) assert a0.rent == 1204.56 assert a0.metersFromUCSB == 200 assert a0.condition == 3 def test_getRent(): assert a0.getRent() == 1204.56 def test_getMetersFromUCSB(): assert a1.getMetersFromUCSB() == 200