Betreed de wereld van het feodale Japan met Assassin's Creed Shadows! Speel als Naoe, een sluipende shinobi-moordenaar, en Yasuke, een legendarische samoerai, en navigeer door een prachtig vormgegeven open wereld vol chaos en avontuur. Beheers unieke speelstijlen, bouw je shinobi-competitie en pas je schuilplaats aan terwijl je hun met elkaar verweven bestemmingen ontdekt. Ervaar dynamisch weer, rekruteer bondgenoten en speel nieuwe vaardigheden vrij om je vijanden te domineren. Perfect voor fans van actie-avonturengames!
Om dit probleem op te lossen, moeten we een bepaalde lijst met systeemvereisten opnieuw formatteren in een gestructureerd HTML-formaat. Het doel is ervoor te zorgen dat de uitvoer schoon en goed geformatteerd is en de gespecificeerde structuur volgt. De systeemvereisten kunnen betrekking hebben op een enkel systeem of meerdere systemen, elk met hun eigen vereisten.
### Aanpak
1. **Identificeer de structuur**: Bepaal of de invoer bestaat uit een enkel systeem of meerdere systemen op basis van de aanwezigheid van een „systeem” -sleutel in de invoerobjecten.
2. **Extractvereisten **: haal voor elk systeem de relevante vereisten uit. Als de vereiste is opgegeven als een HTML-fragment, parseer het dan om sleutel-waarde-paren te extraheren.
3. **Vereisten voor herformatteren**: Converteer elk sleutel-waardepaar naar de opgegeven HTML-structuur. Elke vereiste moet worden vermeld met de sleutel in een reeks, gevolgd door de waarde.
4. **Construeer HTML**: verpak de vereisten van elk systeem in een div met de juiste klasse. Vermeld de systeemnaam, een titel en een regel met minimale specificaties. Scheid meerdere systemen met regeleinden.
### Oplossingscode
``python
json importeren
def reformat_html (input_json):
data = json.loads (input_json)
html_parts = []
# Bepaal of de invoer meerdere systemen bevat
has_system_key = willekeurig ('systeem' in item voor item in data)
voor item in data:
als heeft_system_key:
system_name = item ['systeem']
vereiste = item ['vereiste']
anders:
system_name = „PC”
vereiste = item
# Sleutel-waarde-paren extraheren
artikelen = []
als heeft_system_key:
van bs4 import BeautifulSoup
soup = BeautifulSoup (vereiste, 'html.parser')
list_items = soup.find ('ul') .find_all ('li')
voor li in list_items:
strong = li.find ('sterk')
indien sterk:
sleutel = strong.get_text () .strip () .rstrip (':')
waarde = li.get_text () .split (':', 1) [1] .strip ()
items.append (sleutel, waarde)
anders:
voor sleutel, waarde in requirement.items ():
items.append (sleutel, waarde)
# Construeer de HTML voor dit systeem
system_html = f"'
{system_name} Systeemvereisten
MINIMALE SPECIFICATIES
„'
voor sleutel, waarde in items:
system_html += f"' -
{sleutel}: {waarde}
„'
system_html += ''
html_parts.append (system_html)
# Combineer alle onderdelen met geschikte afscheiders
full_html = '
'.join (html_parts)
retourneer full_html
# Voorbeeld van gebruik:
input_json = „'[{" OS” :"Windows XP of Windows Vista "}, {" Processor” :"1,8 GHz "}, {" Geheugen” :"512 MB RAM (1 GB aanbevolen) "}, {" Graphics” :"3D-videokaart compatibel met DirectX 8 (compatibel met DirectX 9 aanbevolen) "}, {" Hard Drive” :"2GB "}, {" Additional "” :"Muis, Toetsenbord "}]"'
afdrukken (reformat_html (input_json))
```
### Uitleg
1. **Extraheren en parseren**: De code parseert eerst de invoer-JSON om te bepalen of deze meerdere systemen of één systeem bevat. Als het meerdere systemen bevat, wordt voor elk systeem de systeemnaam en vereiste HTML geëxtraheerd.
2. **BeautifulSoup Parsing**: Voor elk systeem met vereiste HTML wordt BeautifulSoup gebruikt om de HTML te parseren en sleutel-waardeparen te extraheren. Deze paren worden vervolgens gestructureerd in het gewenste formaat.
3. **Construeer HTML**: De vereisten van elk systeem zijn verpakt in een div met de juiste klassen en koppen. De sleutel-waardeparen worden geformatteerd in geordende lijstitems met overspanningen voor de sleutels.
4. **Systemen combineren**: meerdere systemen worden gecombineerd met scheidende regeleinden om een juiste opmaak te garanderen.
Deze aanpak zorgt ervoor dat de systeemvereisten worden gepresenteerd in een schoon, leesbaar en goed gestructureerd HTML-formaat.
Voer de code van 25 tekens in, selecteer Next en volg de aanwijzingen.
Voer de code van 25 tekens in en volg de aanwijzingen om het inwisselen te voltooien.
Wees de eerste om dit product te beoordelen!
Delen