Trouvez les marques que vous aimez à des prix qui vous conviennent grâce à une carte-cadeau TJX ! Nos acheteurs négocient des offres incroyables avec les meilleurs designers et vous font bénéficier des économies réalisées. Les départements comprennent les vêtements, les chaussures, la maison, la beauté et les accessoires. La carte-cadeau TJX est échangeable chez plus de 3 200 T. J. Maxx, Marshalls, HomeGoods, Homesense et Sierra (aux États-Unis et à Porto Rico) et en ligne sur tjmaxx.com, sierra.com et marshalls.com.
La solution consiste à analyser la structure d'entrée et à générer le code HTML approprié selon que chaque objet représente un système distinct ou fait partie des exigences d'un système unique.
### Approche
1. **Identifier la structure d'entrée** : Vérifiez si un objet du tableau d'entrée contient une clé « système ». Cela permet de déterminer si nous avons affaire à plusieurs systèmes ou aux exigences d'un seul système.
2. **Traiter plusieurs systèmes** : si la clé « système » existe, chaque objet est traité comme un système distinct. Extrayez le nom du système et ses exigences, puis générez une section HTML pour chacun.
3. **Process Single System** : Si aucune clé « système » n'est trouvée, collectez toutes les paires clé-valeur de tous les objets et mettez-les en forme dans une seule section HTML.
4. **Générer du HTML** : Construisez la chaîne HTML pour chaque système ou les exigences combinées, en garantissant une structure et une indentation appropriées.
### Code de solution
``python
importer un fichier json
def reformat_html (json_str)Â :
données = json.loads (json_str)
has_system = any (« système » dans obj pour obj pour obj dans les données)
pièces_html = []
si has_system :
pour obj dans les données :
system_name = obj.get ('système', «)
exigences = obj.get ('exigence', «)
html = « f »
Configuration système requise pour {system_name}
SPÉCIFICATIONS MINIMALES
{exigences}
« '
html_parts.ajouter (html)
autre :
exigences = []
pour obj dans les données :
pour key, valeur dans obj.items ()Â :
requirements.append (f'
{clé} : {valeur} ')
html = « f »
Configuration système requise pour PC
SPÉCIFICATIONS MINIMALES
}
« '
html_parts.ajouter (html)
renvoie '\n\n
\n'.join (html_parts)
# Exemple d'utilisation :
input_json = « '
[
{"system » :"Windows », « exigence » : » Système d'
- exploitation : Windows 7 ou supérieur
- Processeur : 1,5 GHz Mémoire :
- 2 Go de RAM Graphiques :
- 256 Mo DirectX 9 ou supérieur Stockage :
- 1 Go d'espace disponible Remarques supplémentaires :
- Une copie imprimée du manuel de déminage des bombes est requise. HTC Vive ou Oculus Rift/DK2
requis pour jouer à la réalité virtuelle. «},
{"system » :"Mac », « exigence » : » Système d'
- exploitation : OS X 10.9 ou version ultérieure
- Processeur : processeur Intel 1,5 GHz Carte graphique :
- 256 Mo ou supérieur Stockage :
- 1 Go d'espace disponible
- Remarques supplémentaires
 :
La réalité virtuelle n'est pas prise en charge. «}
]
« '
output_html = reformat_html (input_json)
imprimer (output_html)
```
### Explication
- **Gestion des entrées** : l'entrée est analysée au format JSON pour extraire les structures de données. Chaque objet est vérifié pour détecter la présence d'une clé « système » afin de déterminer s'il représente un système distinct.
- **Génération HTML** : pour chaque système identifié, la section HTML correspondante est générée avec les en-têtes et les exigences appropriés. Si vous gérez un seul système, toutes les paires clé-valeur de tous les objets sont compilées dans une seule section HTML.
- **Formatage des chaînes** : le code HTML est construit avec une imbrication et une indentation appropriées pour correspondre à la structure requise, garantissant ainsi la clarté et l'exactitude de la sortie.
Cette approche traite efficacement les deux types de structures d'entrée et génère la sortie HTML correspondante comme spécifié.
Soyez le premier à donner votre avis sur ce produit !
PARTAGEZ