Ontdek de wereld met een Airbnb-cadeaubon van $75! Met deze cadeaukaart kun je vakantiewoningen, hutten, strandhuizen en unieke huizen over de hele wereld vinden. Of je nu een weekendje weg of een lange vakantie plant, deze kaart is perfect voor iedereen die onvergetelijke ervaringen wil creëren. Geef het cadeau aan vrienden of familie en laat ze hun volgende avontuur kiezen!
Om dit probleem op te lossen, moeten we een intelligente HTML-herformatteeragent maken die een bepaalde JSON-invoer kan omzetten in een gestructureerd HTML-formaat. De uitvoer-HTML moet specifieke richtlijnen volgen, waaronder het gebruik van klassen, kopteksten en lijsten voor systeemvereisten.
### Aanpak
1. **Parse the Input JSON**: De invoer kan in twee vormen zijn:
- Enkele systeemvereisten met meerdere sleutel-waarde-paren.
- Meerdere systemen, elk met hun eigen vereisten.
2. **HTML-structuur genereren**:
- Maak voor elk systeem een `
` met de klasse „prod-spec”.
- Voeg een
``kop toe met de systeemnaam.
- Voeg een
``tag toe met de tekst „MINIMALE SPECIFICATIES”.
- Maak een `
` om elke vereiste op te sommen, waarbij elke vereiste - een `` bevat voor de sleutel en de waarde.
3. **Vereisten behandelen**:
- Als de invoer een enkel systeem is, wijs dan elk sleutel-waardepaar rechtstreeks toe aan een lijstitem.
- Als de invoer meerdere systemen bevat, doorloop dan elk systeem en genereer de bijbehorende HTML.
4. **Speciale behandeling voor vereiste tekenreeks**:
- Sommige vereisten bevatten mogelijk al HTML-elementen. Deze moeten worden geparseerd om individuele vereisten te extraheren en om te zetten in het vereiste formaat.
5. **Zorg voor HTML-validiteit**: Zorg ervoor dat alle tags correct zijn gesloten en dat de structuur voldoet aan de gegeven voorbeelden.
### Oplossingscode
``python
json importeren
def reformat_html (input_json):
# Parseer de invoer JSON
data = json.loads (input_json)
html_uitvoer = []
# Controleer of de gegevens meerdere systemen bevatten
if isinstance (data [0], dict) en „system” in data [0]:
voor system_data in data:
system_name = system_data ["systeem"]
requirements = system_data ["vereiste"]
# Verwijder bestaande
tags uit de vereisten
requirements = requirements.replace (', „)
# Opgesplitst in afzonderlijke lijstitems
- li_items = [item.strip () voor item in requirements.split (') indien item.strip ()! = „]
# Verwerk elk li-item om sleutel en waarde te extraheren
verwerkte artikelen = []
voor item in li_items:
indien '' in het item:
key = item.split (') [1] .split (') [0] .strip ()
waarde = item.split (') [1] .strip ()
processed_items.append ({"key”: sleutel, „value”: waarde})
# Construeer de HTML voor dit systeem
html = f' {system_name} Minimale specificaties van het systeem
'
voor item in processed_items:
html += f' - {item ["sleutel"]}: {item ["waarde"]
} '
html += ''
html_output.toevoegen (html)
anders:
# Gegevens van één systeem
html = 'Minimale specificaties
van het systeem
'
voor de vereiste gegevens:
sleutel = volgende (iter (requirement.keys ()))
waarde = vereiste [sleutel]
html += f' - {sleutel}: {waarde
} '
html += ''
html_output.toevoegen (html)
# Voeg alle onderdelen samen en stuur ze terug
retourneer „.join (html_output) .replace ('\n', „)
```
### Uitleg
De geboden oplossing werkt door eerst de invoer JSON te parseren om te bepalen of deze enkele of meerdere systeemvereisten bevat. Voor elk systeem wordt een HTML `` samengesteld met de juiste kopteksten, alinea's en lijsten. De vereisten worden verwerkt om sleutels en waarden te extraheren, die vervolgens worden opgemaakt in lijstitems. De oplossing verwerkt zowel gewone tekst als voorgeformatteerde HTML-tekenreeksen, zodat de uitvoer de gespecificeerde structuur volgt. Deze aanpak zorgt ervoor dat de resulterende HTML schoon en goed geformatteerd is en voldoet aan de richtlijnen van de gebruiker.
-
Om de kaart in te wisselen, ga naar https://www.airbnb.pt/gift en log in op je account.
-
Cadeaukaarten kunnen worden gebruikt voor elk verblijf, elke ervaring of online ervaring op Airbnb.
-
Zodra je je kaart hebt ingewisseld en het geld van de kaart aan je account hebt toegevoegd, kun je naar Betaalmethoden in je account gaan en je saldo controleren.
-
Zodra een cadeaubon is toegevoegd aan je Airbnb-account, vervalt het geld niet.
Wees de eerste om dit product te beoordelen!
Delen